2012-01-26 7 views
2

제네릭 타입 트로프 유니티를 해결하려고하는데 오류가 발생했습니다 : { "제공된 어셈블리 이름 또는 코드베이스가 유효하지 않습니다 (HRESULT 예외 : 0x80131047)": null} .유니티에서 제네릭 타입을 해결하는 방법

내 코드와 구성은 다음과 같다 :

namespace Prj.Common.Workflow 
{ 
    public class ServiceActivityBase<I, O> : CodeActivity, IServiceActivityBase 
    { 
    } 
} 

namespace Prj.Services 
{ 
    public sealed class TestActivity : ServiceActivityBase<InputDto, OutputDto> 
    { 
    } 
} 

namespace Prj.Dto 
{ 
    public class InputDto {} 
    public class OutputDto {} 
} 

각 네임 스페이스는 네임 스페이스와 같은 이름을 가진 별도의 asssembly에 배치됩니다.

<register type="Prj.Common.Workflow.ServiceActivityBase'2[[Prj.Dto.DajDetailDietetickejPotravinyVstupDto,Prj.Dto],[Prj.Dto.DajDetailDietetickejPotravinyVystupDto,Prj.Dto]], Prj.Common.Workflow" 
mapTo="Prj.Services.TestActivity, Prj.Services" 
name="TestActivity" 
> 
<constructor/> 
<interceptor type="VirtualMethodInterceptor"/> 
<policyInjection /> 
</register>  

구성을로드하는 동안 나는 오류가 발생 해요 : :

IUnityContainer container = new UnityContainer().LoadConfiguration();  

누군가가 도와 드릴까요을 나는 Web.config의에서 다음 등록을?

감사합니다.

+0

이 http://blogs.microsoft.co.il/blogs/gilf/archive/2008/07/25/working-with-generic-types-in-unity-configuration-section.aspx가 도움이됩니까? –

+0

Unity v3.5의 자동 등록에 대한 전체 예제는 http://stackoverflow.com/questions/17168458/unity-autoregistration-convention-based-registration-unity/25654904#25654904를 참조하십시오. – Contango

답변

0

코드에 종속성을 등록 해 보았습니까? 이것은 문제의 범위를 좁히는 데 도움이 될 수 있습니다. 등록은 다음과 같아야합니다 : container.RegisterType<ServiceActivityBase<InputDto,OutputDto>,TestActivity>(). 이렇게하면 문제가 XML 파일에만 있는지 알 수 있습니다.