다른 테이블에 대한 추가 데이터로 사용할 테이블을 만들려고합니다. 예를 들어키/값 열 관계가있는 Fluent NHibernate
나는 나의 기본 테이블이 사람라고합니다. 이 테이블에는 PersonDynamicInfo이라는 테이블의 0 또는 여러 동적 레코드 (자유 텍스트 키 및 자유 텍스트 값)가 포함됩니다.
공개 PersonMap() { Id (x => x.Id); 테이블 ("사람"); 지도 (x => x.Name);
hasMany의 (X => x.PersonDynamicInfo) .KeyColumn ("ID") .Access.CamelCaseField (Prefix.Underscore) .AsSet() .Cascade.AllDeleteOrphan() .Not.KeyNullable() ; }
공개 PersonDynamicInfo() { Id (x => x.Id); 테이블 ("PersonDynamicInfo"); 지도 (x => x.Key);
지도 (x => x.Value);
내가 달성하고자하는 것은 다음과 같다 } : 나는 사람 개체에 액세스
- , 나는 Person.PersonDynamicInfo을 편집 할 수 있도록하려면 있도록이 테이블에 대한 정보 물체와 같습니다. 예를 들어, "키 :A | 값 : TEST"값을 가진 PersonDynamicInfo 레코드를 가진 사람을 생성한다고 가정 해 봅시다. Person 객체에 액세스 할 때 모든 Person.PersonDynamicInfo (컬렉션에서)를 제거하고 새 객체를 추가합니다. "키 : B | 값 : TEST"및 Save this 객체입니다. Person.PersonDynamicInfo는 마지막 레코드 만 포함하는 대신 두 레코드를 포함합니다.
PersonDynamicInfo에서 사용되지 않는 레코드를 수동으로 삭제하지 않고이 방법을 사용할 수 있습니까?
감사합니다.
public PersonDynamicInfo(){
Id(x => x.Id);
Table("PersonDynamicInfo");
Map(x => x.Key);
Map(x => x.Value);
References(x => x.Person, "PersonId").Cascade.All();
}
내가하지만, 질문을 오해 할 수 있습니다