많은 곳에서 FullTypeName, AssemblyName
형식의 부분적으로 한정된 유형 이름이 발생합니다 (예 : Type.AssemblyQualifiedName
). 버전, culture 및 publicKeyToken 한정자가없는 경우에만 가능합니다.부분적으로 한정된 형식 이름이 주어진 경우 Type.GetType은 어떻게 작동합니까?
제 질문은 최소한 Type
으로 변환 할 수 있습니까? 나는 Type.GetType
이 일을한다고 생각하지만, 슬프게도, 그렇지 않습니다. 다음 코드는, 예를 들어, null
반환 : 물론
Type.GetType("System.Net.Sockets.SocketException, System");
, 나는 그것이 작동합니까 완전한 이름을 지정하는 경우 :
Type.GetType("System.Net.Sockets.SocketException, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089");
덕분에 많이.
컴파일 타임에 유형이 있습니까? 그렇다면 왜 typeof () .FullName, et. 알았지? 런타임에 유형이있는 경우
저는 typeof() 또는 Type.FullName을 완벽하게 알고 있습니다. 개체의 형식은 구성 파일에서 읽혀 지므로 Type.GetType을 사용합니다. 이것이 부분적으로 한정된 타입의 이름이 어떻게 작동하는지 이해하는 데 관심이있는 이유입니다. – mark