FateError нет. Есть сервисы проверки доступности сайта - используйте любой для проверки. Проверяйте настройки DNS и т.п.. Ну или и пинайте саппорт хостера.
Павел Карплюк просто откройте Правила, прочитайте и соблюдайте. В данном случае обратите внимание на правило 3.8. Не будете соблюдать - вопросы будут удалять.
Даниил Какой именно пример? Все что может быть скомпилировано компилятором может быть повторено вручную. Можно запросто выделить кусок памяти, ручками записать туда машинный код и вызвать его - и оно будет работать (да, я так делал, если что). Ассемблер - это абстракция, что лежит под классическими языками программирования. Ниже - машинный код, а далее - нули и единицы, представляемые уже напряжением где-то в транзисторах процессора.
Поэкспериментировал, и вот так вот вычислить адрес, и вставить его быстрее чем, допустим там стояло this.Point.
А как именно проводилось измерение? Продакшен сборка после прохода оптимизатора? Есть ведь еще и оптимизатор с разными настройками оптимизации, разные процессорные архитектуры, а так же разные версии языка, .net, самого оптимизатора и прочее-прочее. Там вполне может оказаться тот же самый код, который ручками был сделан. Или даже лучше. Нынче там очень много всего накручено и никогда не знаешь во что в итоге будет перекручен код оптимизатором.
Да, с типами в дот-нете несколько заморочено - боксинг/анбоксинг, приведение типов от одного к другому и прочее. Легко напороться на не очень понятный баг. И поэтому я сначала пишу код на шарпе, потом дизассемблирую его и разбираю пошагово что именно там происходит. Когда понимаешь, что именно там скомпилировалось и как оно работает - получается проще написать то же самое асмом, да.
Ну, я сейчас детали не вспомню, но там вроде просто объявляется локальная переменная нужного типа, а далее с ней работать надо как с объектом или адресом и надо использовать кастинг в нужный тип. Методы вызываются тоже достаточно просто - заранее получаем MethodInfo и в качестве аргумента передаем инстанс объекта, метод которого надо вызвать. Большинство ответов такого типа я нашел на SO и читая дизассемблированный код.
Не очень понятно, что именно хотите сделать - опишете более глобально вашу задачу. Дизассемблер как раз и выдает список скомпилированных команд. Я делал максимально просто: пишу тестовый метод с одной или двумя командами, дизассемблирую и смотрю что именно там было скомпилировано, анализирую и пишу свой код, который выдает такой или чуть измененный результат.