내 SharpArchitecture 프로젝트에서 여러 데이터베이스를 가지고 있고 가이드는 여기에 설명 된 다음 :S 번호의 ARP 아키텍처, NHibernate에 입력 된 ID로 여러 데이터베이스
http://wiki.sharparchitecture.net/FAQ.ashx
모두가 할당 된 식별자 내 기관을 제외하고 잘 작동 . 응용 프로그램을 시작할 때 "데이터베이스가 이미 구성되었습니다."라는 메시지가 나타납니다. 뒷조사를 통해 내가 얻을 :
public void Apply(FluentNHibernate.Conventions.Instances.IIdentityInstance instance)
{
instance.Column("Id");
instance.UnsavedValue("0");
instance.GeneratedBy.HiLo("1000");
}
이
는instance.GeneratedBy.HiLo("1000")
동안 발생합니다 "신원 유형 (INT, 긴, UINT, ULONG) 통합해야합니다"; 이것은 내 매핑이 할당 된 ID와 문자열 일 때 이상합니다. 내 할당 된 ID 맵을 무시한 것으로 보입니다.
[SessionFactory(DataGlobals.SecondDbFactoryKey)]
public class SecondDbEntityMap: IAutoMappingOverride<SecondDbEntity>
{
public void Override(AutoMapping<SecondDbEntity> mapping) {
mapping.Id(x => x.AssignedIdProperty).GeneratedBy.Assigned();
}
}
매핑이 올바르게 작동해야하나요? 나는 첫 번째 데이터베이스에 두 개의 할당 된 id 엔티티가 있고 그들은 같은 방식으로 매핑된다 (세션 속성이 없다). 나는 이것을 알아낼 수 없다.