reflection.emit

    6

    4답변

    this을 찾았지만 사용하려고 시도했지만 실패했습니다. 어떻게하면 반사를 사용하여 개체를 만들고 대리인에 넣어서 빠르게 만들 수 있습니까? DynamicMethod dm = new DynamicMethod("MyCtor", t, new Type[] { }); var ctor = t.GetConstructor(new Type[] { });

    5

    2답변

    기본적으로 이벤트 이름을 문자열로 받아 들여 EventInfo이됩니다. 그런 다음 리플렉션을 사용하여 이벤트 핸들러 유형 및 이벤트 인수 유형을 찾고 해당 유형의 새 델리게이트 (myEventHandler)를 작성한 후 이벤트와 연결합니다. 언제 myEventHandler 호출 될 때, 나는 다운 캐스트하고 처리기에 인수를 전달해야합니다. 내 코드는 다음과

    3

    2답변

    Reflection.Emit을 사용하여 기존 어셈블리에 형식을 만들 수 있습니까? 아니면 동적 형식을 포함 할 수 있도록 새 동적 어셈블리를 정의해야합니까? 기본적으로 여러 클래스를 인스턴스화하고 다른 여러 XML 파일의 데이터로 채워진 클래스를 정의하는 XML 정의 파일을 읽으 려합니다. 여러 폴더 (각기 다른 정의 파일이 있음)에 대해 린스하고 반복합니

    4

    1답변

    IL 방출을 사용하여 서로를 참조하는 두 가지 유형을 정의 할 수있는 것은 방출 : public class Foo { public Bar Bar { get; set; } } public class Bar { public Foo Foo { get; set; } } 어려움이 TypeBuilder.DefineProperty()를 호출

    1

    1답변

    WCF 관심사에 대한 기존 인터페이스를 기반으로 인터페이스를 만들고 있지만 "DefineParameter"매개 변수 이름을 설정하지 않았습니다 (생성 된 형식의 메서드 매개 변수에는 이름이 없음). 그 이유를 알 수 있습니까? public static Type MakeWcfInterface(Type iService) { AssemblyN

    2

    2답변

    Compact Framework에서 Linq 표현 트리 (db4o/Mainsoft/Mono 포트)를 사용하고 있습니다. System.Reflection.Emit가 존재하지 않기 때문에, 퍼포먼스를 위해 수행하고자하는 델리게이트로 LambdaExpressions를 컴파일 할 수 없습니다. 필자는 익스프레션 트리를 일리노이로 변환하고 기본적으로 실종 된 Emi

    1

    3답변

    C#을 사용하여 동적으로 생성 된 유형의 인스턴스와 간단한 구조체의 인스턴스로 목록을 채울 때 성능에 큰 차이가 있음을 눈치 챘을 것입니다. 아래 코드에는 100,000 개 개체로 목록을 채우는 4 가지 방법이 포함되어 있습니다. 각있어서 다르게 수행 Button1에 300 밀리 참고 버튼 3 코드 & 4에서 온 15 밀리 Button2를 : 4 & 31

    3

    1답변

    참조 된 dll에서 유형을 확인하기위한 전략이 있습니다. 나는 컴파일되고있는 어셈블리에 정의 된 타입을 해결하려고 노력하고있다. 제 3 자 라이브러리가없는 System.Reflection.Emit API를 사용하고 있습니다. 예를 들어 : class A {} class B { public A AnInstanceOfA {get; private s

    18

    2답변

    내가 알 수있는 한 Java에는 C#의 Reflection.Emit 등가물이 없습니다. 유사한 기능을 제공하는 Java 용 라이브러리가 추가로 있습니까? 차이점은 무엇입니까 (반사 방출)? 대린의 훌륭한 대답 (+1) 게다가

    16

    3답변

    System.Linq.Expressions 및 Expression.Lambda<Func<>>.Compile() 등을 사용하여 다양한 Func<> 대리자를 생성하는 코드가 있습니다. 생성 된 함수를 나중에 사용할 수 있도록 serialize 할 수 있기를 바랍니다. 과거에는 System.Reflection.Emit을 사용하여 몇 가지 작업을 수행했지만 Lin