2016-11-28 1 views
1
내가 엔티티를 매핑하는 데 사용하는 인터페이스가 도메인에 개체 한

Assistant는

public interface IDataEntity<in T1, out T2> where T1 : new() where T2 : new() 
{ 
    T2 Map(T1 obj); 
} 

날 구현을 쓸 수 있도록 내가 인터페이스를 쓸 수있는 방법

public class MyEntityObj : IDataEntity<MyEntityObj, MyDomainObj> 
{ 
    //props 
    public MyDomainObj Map(MyEntityObj obj){ 
     // mapping here 
     return new MyDomainObj(); 
    } 
} 

을 구현하려면 개체 like

public class MyEntity : IDataEntity<MyDomainObj>{ 
} 

감사합니다.

+0

유일한 방법은'T2' 대신에'IDataEntity'를 반환하는 것입니다. 그러나 그 다음으로는 두 번째 유형이 제네릭이되기를 바라는 강력한 타이핑을 기본적으로 잃게됩니다. – juharr

답변

3

수 없습니다. 전체 generic 인수 목록을 작성해야합니다.

+0

나중에 다른 것을 시도하지만 나는 운이 없었습니다. 도움을 주셔서 감사합니다. –