2
프로그램을 실행할 때 오류 메시지가 나타나면 다음과 같이 말합니다. 메서드 참조가 methodinfo.invoke (data, null)의 개체 인스턴스로 설정되지 않았습니다. 내가 원하는 것은, 실행 시간에 동적 일반적인 컬렉션을 만들 수있는 XML 파일에 따라 달라집니다, 그것은 할 수있다 list<classname>
, dictionary<string, classname>
, customgenericlist<T>
등반사를 통해 제네릭 목록을 동적으로 만들 때 오류가 발생했습니다.
아래는 코드입니다 : 테스트 대상으로 목록을 사용하여이. 그러나
var prop = anobj.GetProperty("Count");
Console.WriteLine(prop.GetValue(data, null));
,에 캐스팅 좋을 것이다 :
public object InstantiateGeneric(string namespaceName_className, string generic_namespaceName_className)
{
Type genericType = Type.GetType(namespaceName_className);
Type[] typeArgs = {Type.GetType(generic_namespaceName_className)};
Type obj = genericType.MakeGenericType(typeArgs);
return Activator.CreateInstance(obj);
}