2015-01-07 2 views
0

안녕하세요, 저는 현재 XML 매핑을 코드 매핑으로 변환 중이고 ManyToOne 매핑을 변환 할 적절한 방법이 없기 때문에 한 곳에서 머물러 있습니다.매핑을 XML에서 Confirmst로 변환 (코드 매핑)

는 XML 매핑 지금은 다른 솔루션에서이 MyProject.Activity.Communication를 내 매핑 프로젝트에 대한 언급이없는

</many-to-one> 
    <many-to-one class="MyProject.Activity.Communication, MyProject.Activity" name="Comm"> 
    <column name="CommID" /> 
</many-to-one> 

이다. 내 코드 매핑에서 클래스를 지정하고 싶습니다.

ManyToOne(x => x.Comm, map => 
     { 
      map.Column("CommID"); 
     }); 

코드 매핑에 클래스를 추가해야하므로 엔터티 이름을 참조 할 때이 매핑에서 클래스를 어떻게 지정해야합니까?

+0

나는 이것이 대답이 아니라는 것을 알고있다. 그러나 매핑 프로젝트가 POCO 프로젝트를 참조하지 않는 것은 의미가 없습니다. 그것은 이해가되지 않습니다 ... 아무런 이점이 ... –

+0

사실 하나의 ParentCommunication에 의해 참조되고 있으므로 하나의 pluggin (Activity)이 있습니다. 그래서 추가 된 pluggins가 선택됩니다. 모든 것이 XML 매핑을 사용하여 프로젝트에서 작동하지만 xml 매핑은 classname에서 문자열을 사용하므로 윈저로 해결되며 코드로 매핑을 변환 할 때 클래스 이름을 추가 할 수 없습니다. ISET에서 EntityName과 같은 속성이 있습니까? – Moiz

+0

POCO 프로젝트가 참조되어 있지만이 활동으로 동작을 확장합니다. – Moiz

답변

0

매핑은 Reflection을 사용하여 어셈블리 이름을 가져옵니다.

ManyToOne(x => x.Survey, map => 
    { 
     map.Column("SurveyID"); 
     map.Class(Type.GetType("MyProject.Activity.Communication, MyProject.Activity")); 
    }); 
관련 문제