2012-01-06 2 views
1

이 메서드를 사용하는 방법? 내가 DefineDynamicAssembly Thread.GetDomain을(). 사용하여 런타임에서 어셈블리를 만드는 오전Assembly.LoadModule 사용

Assembly.LoadModule

...

이 난에 정의 된 기존의 어셈블리에서 런타임에 생성이 어셈블리를로드 할 수있는 방법을 알고 싶어요 디자인 시간.

답변

1

개발자가 디스크에 정의한 Assembly에 동적으로 생성 된 Assembly을로드하는 중입니다. 그 맞습니까?

그렇다면 이는 단순히 불가능합니다. 일단 정의 된 어셈블리는 효과적으로 변경되지 않습니다. 해당 유형 정보는 런타임에 변경할 수 없습니다. 나중에 모듈을 밀어 넣을 수 없습니다.

여기에서 달성하려는 내용에 대해 좀 더 자세히 설명해 주실 수 있습니까? 아마도 또 다른 해결책이있을 것입니다.

+0

감사! 나는 런타임에 저장소를 만들고 NHibernate를 사용하고 Windsor를 사용하여 Widson을 TypeFromAssembly와 함께 사용하여 컨트롤러 (ASP.NET MVC)에이 저장소를 삽입했습니다. 필자는 원하는 모든 유형을 전달하는 다른 방법을 사용하여 작업을 수행 했으므로 마지막 어셈블리를 사용하기 위해 디스크 어셈블리에 유형을 추가 할 수 있는지 알고 싶습니다. –

1

로드 할 필요가 없습니다. 방금 생성 했으므로 이미로드되었습니다. 이제해야 할 일은 AssemblyBuilder.DefineDynamicModule()으로 ModuleBuilder를 만들고 클래스를 만들고 사용하기 만하면됩니다.

+0

하지만 런타임에 생성 된이 모듈을 동적이 아닌 다른 어셈블리에로드하려고합니다. –