1

자바에서 하이버 네이트 매핑을 수행하는 주석을 알고 있으며 C# 및 NHibernate에서 동일한 작업을 수행하는 유사한 방법을 찾고 있습니다. 나는 거기에 몇 가지 존재NHibernate 매핑을 수행하는 가장 생산적인 방법은 무엇입니까?

  • NHibernate.Mapping.Attributes (NHMA가) 유창함
  • 가 더 이상 XML 파일의 매핑을 접근 것을 발견?

내가 NHMA을 시도하고 나를 위해 일부 차단 포인트를 가지고 발견 ...

난 당신이 최고의 NHibernate에에 모델을 매핑하는 방법,하지만 내가 찾고 있던 무슨 논의하고 싶지 않아 인터넷에서 좋은 비교.

그러한 사이트를 알고 계십니까? 위에 나열된 "프레임 워크"중 하나를 선택하면 고려해야 할 주요 사항은 무엇입니까? 나는 'NH 개발자들에 의해 공식적으로 지원되는이 프로젝트입니까?', 'XML 매핑에 맵핑 될 수 있지만 유창한/NHMA/등이 아닌 모델이 있습니까?'와 같은 측면을 생각하고 있습니다.

무엇을 권하고 싶습니까? 왜?

답변

4

Fluent NHibnernate auto mapping 또는 코드 생성 (CodeSmith, MyGeneration, T4 등)은 매핑 파일을 만드는 가장 생산적인 방법입니다. 나는 POCO를 평범하게 유지하기 때문에 속성 접근법을 싫어한다.

+0

+1 오브젝트가 변경된 경우 POCO를 깨끗하게 유지하고 불쾌한 XML 문제를 피하려면 유창해야합니다. –

2

또 다른 옵션으로, 특성이 마음에 들지 않으면 Castle ActiveRecord입니다.

Here's an article 귀하가 결정하는 데 도움이 될 수 있습니다.

+0

나는 너의 포스트를 apreciate. 기사 주셔서 감사합니다. 내 모델에서 속성을 신경 쓰지는 않지만 모든 엔티티가 ActiveRecord 프레임 워크에서 기본 클래스를 상속 받기를 원하지는 않습니다. 그리고 엔티티가 자신의 스토리지를 관리하기를 원하지 않습니다. DAO와 마찬가지로) –

+0

ActiveRecordBase에서 상속 은 전적으로 선택 사항입니다. DAO로서 ActiveRecordMediator 나 Ayende의 IRepository 같은 래퍼를 사용할 수 있습니다 : http://github.com/ayende/rhino-tools/blob/master/commons/Rhino.Commons.ActiveRecord/Repositories/ARRepository.cs –

관련 문제