를 사용하여 엔티티 프레임 워크 객체의 인스턴스를 만들 수 없습니다 : 전에이 코드를 사용했다내가 반사 사용하여 엔티티 프레임 워크 객체의 인스턴스를 만들려고하고 반사
var type = Type.GetType("MyAssembly.MyEntityNamespace.MyEntity");
var target = Activator.CreateInstance(t);
를하고 일반 "에서 큰 일을 항상하고있다 "개체를 사용하지만이 솔루션의 EF 개체에 사용할 경우 GetType()
은 null을 반환합니다. 내 EF 모델은 자체 프로젝트에 있으며이 코드는 자체 테스트 어셈블리에서 실행됩니다. 테스트 어셈블리 은을 참조하여 EF 어셈블리를 참조하고 EF 어셈블리는/bin에 있습니다.
나는 일반적으로 EF 클래스의 인스턴스를 만들 수 있지만 반사에서조차 시도는 작동하지 않습니다
var item = new MyEntity(); //works fine
Type.GetType(item.GetType().FullName); //null
Type.GetType(item.GetType().Name); //null
잘 모르겠어요 이것이 EF 일 또는 프로젝트 참조 일 경우. 리플렉션없이 객체를 그렇게 쉽게 만들 수있을 때 간단한 반사를 사용하여이 객체의 새 인스턴스를 만들 수없는 이유는 무엇입니까?
http://msdn.microsoft.com/en-us/library/system.type.assemblyqualifiedname.aspx – Reddog
이제는 언급 한 것이 분명해 보입니다. 나는 그것을 한 발씩주고 조금 후에 대답 할 것이다. – Jeff
그게 전부 였어. 버전, 문화권 및 공개 키 토큰을 가진 정규화 된 이름이 아니지만 'MyAssembly.MyNamespace.MyEntity, MyAssembly'가 작동했습니다. 정말 고마워! – Jeff