성별을 'M'또는 'F'로 저장하는 'LS_GENDER'필드가있는 데이터베이스가 있습니다.FluentNHibernate : 속성과 다른 데이터 유형을 가진 필드에 액세스하는 방법
내 응용 프로그램에서는 성별을 사용하는 성별이라는 열거 형을 사용합니다.
private string _gender;
public Gender Gender { get { return GetGenderFromString(_gender); } };
private Gender GetGenderFromString(string strGender)
{
switch (strGender.ToLower())
{
case "f":
return Gender.Female;
case "m":
return Gender.Male;
default:
return Gender.Unknown;
}
}
가 어떻게 FluentNHibernate로이지도 않습니다
내 기업은 다음과 같은 필드와 속성이 있습니다? 필드 액세스를 사용하려고합니다 (아래 그림 참조) :
Map(x => x.Gender).Column("LS_GENDER").Access.CamelCaseField(Prefix.Underscore);
하지만 'F를 성별로 분석 할 수 없습니다'오류가 발생합니다. 나는 속성과 필드가 같은 타입이 아니기 때문에 NHibernate가 혼란스러워하고 있다고 생각한다.
어떻게 매핑해야합니까?
IUsertype을 사용하여이 문제를 해결했습니다. Kai의 목표는 IUserType에 대해서도 이야기했지만 덜 직접적으로 언급했습니다. – David