새 프로젝트에서 DDD을 사용하고 클래스를 모델링 한 다음 클래스 라이브러리를 기반으로 데이터베이스 스키마를 생성하고 싶습니다. 내 계획은 NHibernate hbm2ddl 도구 SchemaExport
으로 이것을 수행하는 것이다.NHibernate SchemaExport and Configure() catch-22
문제는 내가 SchemaExport
때문에 그것이 나를두고 이상한 캐치-22 문제 동작하지 않습니다 수 있다는 것입니다. SchemaExport
는 세트뿐만 아니라 그 자체가 유효한 NHibernate에 구성 파일을 필요로하는 Configuration
객체를 필요 데이터베이스 맵핑.
캐치-22 여기에 내가 구성은()가 "Could not determine the name of the table for entity 'MyEntity'; remove the 'table' attribute or assign a value to it."
을 불평 할 때 SchemaExport
가 그것이 내가 만들 수 Configuration
을 기반으로 만든하도록되어있는 동안 그래서 Configure()
방법은 존재하는 테이블을 필요로한다는 것이다 테이블이 존재하지 않기 때문입니다.
그래서,이 땅에서 나는 Configure()
던져없이 유효한 NHibernate에 Configuration
가 SchemaExport
실제로 유용한 일을하는 데 필요한 매핑을 포함하는 생성하고 SchemaExport
으로 작성되는 테이블을 찾을 수 없다는 불평을 하죠 방법 ? 거기에 Configuration
개체를 설정할 수있는 "모드"가있어 주어진 테이블의 존재 여부를 데이터베이스에서 확인하지 않거나 내가해야 할 일이 있습니까?
팁 주셔서 감사합니다. HBM을 직접 작성하지는 않지만 Fluent NHibernate에 의해 동적으로 생성되도록하기 때문에 결과 HBM의 'table'속성을 'GetTableName'규칙으로 설정하는 데 오류가 있다는 것을 알지 못했습니다. 빈 문자열 생성 된 HBM 파일을 손에 넣으면 문제가 매우 명확 해졌으며 몇 초 내에 수정할 수있었습니다. 예! :) –