나는이 문제를 해결하기 위해 노력하고있어 :반사, 제네릭 여러 어셈블리
Type.GetType("Class1'[[Class2]]")
곳 Class1
및 Class2
다른 어셈블리에 있습니다.
Class2
형식뿐만 아니라 Class1
형식도 찾을 수 있지만 Class1<Class2>
형식은 어떻게 만듭니 까?
Type.GetType("Class1`1[Class2]");
참고 :
나는이 문제를 해결하기 위해 노력하고있어 :반사, 제네릭 여러 어셈블리
Type.GetType("Class1'[[Class2]]")
곳 Class1
및 Class2
다른 어셈블리에 있습니다.
Class2
형식뿐만 아니라 Class1
형식도 찾을 수 있지만 Class1<Class2>
형식은 어떻게 만듭니 까?
Type.GetType("Class1`1[Class2]");
참고 :
는 나는 다음과 같아야합니다, 생각 나는에` '에서 apostroph 변경 및 일반 인수의 수를 추가했다.
이 충분하지 않은 경우, 네임 스페이스와 어셈블리를 포함하는 클래스를 지정하십시오 : 당신이 유형을 찾아 낼 수있는 경우에
Type.GetType("Namespace1.Class1`1[[Namespace2.Class2, Assembly2]], Assembly1");
MakeGenericType() 솔루션은 훨씬 더 우아합니다. –
모두 당신은해야합니다
Type class1Type = assembly1.GetType("Class1"); //or however you are able to get this type
Type class2Type = assembly2.GetType("Class2"); //or however you are able to get this type
Type genericType = class1Type.MakeGenericType(class2Type);
genericType가있는 같이 될 것입니다 typeof(Class1<Class2>)
문자열로 형식을 가져 오는 이유는 무엇입니까? 해당 어셈블리의 내부 클래스입니까? –