Вопросы по теме 'reflection.emit'

Странная последовательность параметров с использованием Reflection.Emit
Недавно я смотрел на Reflection.Emit. Я написал простую программу, которая генерирует DynamicMethod, который просто вызывает другой метод с теми же параметрами. class Program { static void Main(string[] args) { Program p = new...
1765 просмотров

Можно ли написать сборку, которая динамически генерирует новый класс и исправляет себя новым классом?
Можно ли написать сборку, которая динамически генерирует/испускает новый класс и исправляет себя, чтобы включить новый класс? Как?
931 просмотров

Reflection.Emit для динамического создания метода
Я хотел бы создать динамически некоторый метод, который будет принимать один параметр - экземпляр класса A, а затем будет выполнять метод B в переданном экземпляре A. B имеет параметр типа int. Итак, вот схема: dynamicMethod(A a){ a.B(12); }...
881 просмотров
schedule 05.03.2022

Java-эквивалент Reflection.Emit
Насколько я могу судить, в Java нет такого эквивалента Reflection.Emit материала C#. Существуют ли какие-либо дополнительные библиотеки для Java, обеспечивающие аналогичную функциональность? В чем разница (от излучения отражения )?
3610 просмотров
schedule 14.03.2022

Как LinqPad поддерживает службы данных WCF?
LinqPad поддерживает службы данных WCF. Если вы назначаете URL-адрес, например http://services.odata.org/Northwind/Northwind.svc/ . В нем будут перечислены все доступные объекты данных, и вы сможете запросить их. Я предполагаю, что LinqPad...
1276 просмотров

Код DynamicMethod, не поддающийся проверке в .Net 4.0 (найден ref 'this', ожидаемый указатель ref 'f__AnonymousType1')
Использовал это решение для преобразования анонимных типов в словари с помощью Reflection.emit. Работал нормально, пока я не перешел на .Net 4.0 с 3.5. Теперь я получаю «System.Security.VerificationException: операция может дестабилизировать...
721 просмотров
schedule 25.10.2023

Вызов конструктора значений по умолчанию без параметров через Reflection.Emit
Возможно ли это вообще, учитывая, что Type.GetConstructors() не вернет такой конструктор? Я просмотрел этот вопрос , но он все еще не решить проблему. Пример: Как излучать default(Nullable<int>) или default(Guid) ? PS: меня не...
223 просмотров
schedule 16.04.2023

Какой самый интересный и многообещающий подход к реализации компилятора на C#?
Я только в начале своего дипломного проекта, который должен длиться 6 месяцев. Цель проекта — реализовать .Net-компилятор для одного скриптового языка. У меня была компиляторная конструкция в качестве предмета в моей учебной программе, и я знаю...
547 просмотров

Используйте Reflection для создания класса (для создания динамического класса FileHelper)
Могу ли я создать класс, как показано ниже, динамически, используя отражение? Методов нет, только общедоступные переменные, некоторые имеют пользовательские атрибуты. Требуется ли метод .Emit (из того, что я видел, «Emit» выглядит немного сложно)....
3674 просмотров

C# Reflection IL — понимание того, как значения копируются
Я пытаюсь улучшить производительность определенной части моей программы, которая включает в себя глубокое клонирование одного и того же графа объектов снова и снова в нескольких потоках. В настоящее время я использую сериализацию, которая является...
2244 просмотров
schedule 06.05.2023

Почему пропуск проверки видимости разрешен только для динамических методов?
Я портирую код, который широко использует DynamicMethod s, чтобы обеспечить предварительную компиляцию для повышения производительности при холодном запуске. Я заметил, что DynamicMethod могут быть JIT-компилированы и выполнены с пропущенными...
335 просмотров
schedule 03.03.2023

Использование IL Emit для замены Activator.CreateInstance
У меня есть класс, реализующий интерфейс, который имеет конструктор с несколькими параметрами и статическую отсортированную коллекцию. Этот класс является базовым классом, который имеет множество унаследованных классов. internal class SCO :...
1309 просмотров

Испускание вызова функции делегата
У меня есть следующий код С#: public static double f2(Func<double, double> f, double x) { return f(x); } А вот и IL-код: .method public hidebysig static float64 f2 ( class [mscorlib]System.Func`2<float64,...
2844 просмотров
schedule 05.11.2022

Отражение испускает стек и вызывает метод
Может кто-нибудь объяснить мне, что нужно загрузить в стек перед вызовом функции через Reflection.emit? у меня очень простой способ public static void Execute(string 1, string 2) Я хочу динамически сгенерировать метод в следующем классе...
1086 просмотров
schedule 23.04.2023

Создайте класс динамически с помощью Reflection.Emit. я застрял
Я прочитал о создании типов во время выполнения, и я нашел это удивительным. Моя цель - создать этот класс: [DelimitedRecord(",")] public class Person { [FieldOrder(0)] private string firstName; [FieldOrder(1)] private string...
6851 просмотров
schedule 27.10.2022

Вывод интерфейса по типу во время компиляции
Есть ли способ вывести интерфейс из объекта на основе его типа. Например, если бы у меня был следующий объект: public class Person { public string FirstName { get; set; } public string LastName { get; set; } } Я хотел бы иметь...
163 просмотров
schedule 25.02.2023

Как вызвать метод экземпляра из синглтона с помощью emit
У меня есть исключение: операция может дестабилизировать среду выполнения, и я не знаю, почему :( Пожалуйста, помогите мне. Я добавил Local, но все еще не работает... Метод, который нужно создать динамически (REF000001): public static int...
465 просмотров

Как вызвать функцию модуля .Net из С#?
Этот код создает сборку. В сборке есть единственный статический метод под названием «Test2», который выводит «Вау!» в командную строку. Этот метод не находится в классе — это «глобальный метод» в модуле сборок. var fileName =...
48 просмотров
schedule 11.05.2023

Reflection.Emit небезопасный код
Я занимаюсь хакерством с Reflection Emit в F #. Я пытаюсь сделать эквивалент этого кода С#: var ass = AppDomain.CurrentDomain.DefineDynamicAssembly(new AssemblyName("Test"), AssemblyBuilderAccess.RunAndSave); var mb =...
325 просмотров
schedule 28.04.2022

Почему ILGenerator вставляет инструкцию Leave в оператор Foreach
Я генерирую следующий код: public override void Map(IEnumerable enumerable1) { List<int> list = new List<int>(); foreach (object obj2 in enumerable1) { } } через Emit Вот полный код: MethodBuilder...
713 просмотров
schedule 02.05.2022