2011-05-05 3 views
0

자동 매핑을 사용하여 Fluent Nhibernate를 사용하고 있습니다. 그것은 다음과 같은 방법으로 매핑 된 속성을 재정의 할 수있는 기능 제공 :이 클래스는 Description 열뿐만 아니라 Length 속성을 변경유창한 자동 매핑이 단일 속성을 대체합니다.

public class CommunityMap : IAutoMappingOverride<Community> 
{ 
    public void Override(AutoMapping<Community> mapping) 
    { 
     mapping.Map(x => x.Description).Length(5000); 
     mapping.Cache.ReadWrite(); 
    } 
} 

을뿐만 아니라, 그것은 매핑에 열 이름을 변경합니다. 동일은 HasMany 및 다른 사람에게 간다. 예를 들어 특정 컬렉션에 대한 지연로드를 비활성화하려고하지만 다른 모든 속성은 automappings에 의해 설정된 것으로 둡니다. FNH와 함께 할 수 있습니까?

답변

1

예, 가능합니다.

public class ContractMappingOverride : IAutoMappingOverride<Contract> 
{ 
    public void Override(AutoMapping<Contract> mapping) 
    { 
     mapping.HasMany(x => x.Details).Access.CamelCaseField(Prefix.Underscore).Cascade.AllDeleteOrphan(); 
    } 
} 

방금 ​​제작 코드에서 복사했습니다.

+0

여기에는 많은 연관성이있는 모든 속성이 변경됩니다. 게으른로드 만 변경하려고하지만 다른 모든 변경하지 마십시오. – Sly

관련 문제