2011-03-04 6 views
1

NH Fluent 인터페이스에서 많은 버즈가 생성되는 것을 보았습니다. 따라서 XML 매핑 및 Criteria API 대신 Fluent를 사용하면 어떤 이점이 있습니까?NHibernte Fluent 대 XML 매핑

+0

Fluent에서 XML 매핑을 선택하는 유일한 이유는 응용 프로그램을 다시 컴파일하지 않고 XML을 변경할 수 있다는 것입니다. 그것은 어떤 사람들에게는 중요 할 수도 있지만, 개인적으로 나는 코드에 뛰어 들어가서 그곳의 매핑을 변경합니다. 그 외에도, Sly의 대답은 나를 위해 그것을 요약합니다. – sanderd

답변

4
  1. 리팩토링 친화적 '그냥 명확하게하기 위해 도메인
  2. 컴파일 시간 확인
1

Fluent NH의 규칙에 따라 자동 매핑이 가장 유용하다고 생각한 부분이 있습니다. 기본적으로 모든 것을 매핑하므로 복잡한 매핑이 필요한 경우에는 속성별로 재정의 할 수 있습니다.

엔티티 폴더에 새로운 엔티티를 추가하고 매핑을 사용하지 않고 엔티티 폴더와 함께 제공되는 엔티티 폴더를 사용하기 만하면됩니다.

0

에 대한 매핑에 구성 규칙을

  • 인텔리을
  • Automappings를 (이름 변경은 매핑을 중단하지 않습니다) FluentNhibernate 매핑 라이브러리에 대해 다시 이야기 하시겠습니까? 질의와 관련이 없으므로 hql 또는 criteria API와 함께 사용할 수 있습니다.

    기준 API가 fluent interface pattern을 따르므로 Fluent NH로 간주 될 수 있으므로 질문합니다.

    Critical vs Hql의 장점과 단점은 많지만 기본적으로 ICriteria는 프로그래밍 방식으로 쿼리를 작성하는 것이 더 좋으며 지정된 쿼리가 절대로 (매개 변수 제외) IMHO를 변경하지 않으면 hql이 더 좋습니다. 당신은 또한 hql과 같은 그룹핑과 관련없는 조인을 통해 기준 API로 할 수없는 몇 가지 작업을 수행 할 수 있습니다.

  • +0

    XML 매핑 vs FluentNH 매핑 라이브러리에 대해 이야기하고 있습니다. –

    +0

    Darius의 핵심은 Criteria API가 POCO-SQL 매핑의 일부가 아니기 때문에 Criteria API가 유창하게 XML을 매핑하는 것과 완전히 별개의 문제라는 점입니다. – Rich