2008-09-03 5 views
32

NHibernate를위한 Entity Class 및/또는 hbm 파일 및/또는 sql 스크립트를 생성하는 가장 좋은 도구는 무엇입니까?NHibernate 생성기

아래 목록은 http://www.hibernate.org/365.html입니다. 그 이유는 무엇입니까?

  • 기존 Visual Studio 프로젝트에 병합 할 수있는 무료 GPL (More Source, GPL) O/R 생성기. 또한 생성 된 클래스에 변경 사항을 병합합니다.
  • NConstruct Lite NHibernate O/R 매핑 소스 코드 생성을위한 무료 도구입니다. 다양한 데이터베이스가 지원됩니다 (Microsoft SQL Server, Oracle, Access).
  • GENNIT NHibernate 코드 생성기 WYSIWYG 온라인 UML 디자이너를 사용하여 NHibernate 코드의 Free/Commercial Web 2.0 코드 생성.
  • GenWise Studio with NHibernate Template 상용 제품; 기존 데이터베이스를 가져 와서 팩토리를 포함한 모든 XML 및 클래스를 생성합니다. 그것은 또한 자동으로 귀하의 NHibernate BO - 레이어 asp.net 웹 응용 프로그램을 생성 할 수 있습니다. 매트 Helander에 의해
  • HQL 분석기 및 hbm.xml GUI 편집기
  • ObjectMapper는
  • MyGeneration 템플릿 기반의 코드 생성기 GUI입니다 NHibernate에 지원하는 매핑 GUI입니다. 템플릿 라이브러리에는 데이터베이스에서 매핑 파일과 클래스를 생성하기위한 템플릿이 포함되어 있습니다.
  • AndroMDA는 MDA (Model Driven Architecture)를 사용하여 UML 모델을 배포 가능한 구성 요소로 변환하는 오픈 소스 코드 생성 프레임 워크입니다. 그것은 지속성 프레임 워크로서 NHibernate를 사용하는 데이터 액세스 레이어의 생성을 지원합니다.
  • CodeSmith 템플릿 NH
  • NHibernate 도우미 키트는 클래스 및 매핑 파일을 생성하는 VS2005 추가 기능입니다.
  • NConstruct - 지능형 소프트웨어 공장 상업용 제품; 단순한 마법사 절차를 통해 정보 시스템의 모든 계층에 대한 전체 .NET C# 소스 코드 생성. NHibernate에 기반한 O/R 매핑. WinForms와 ASP.NET 2.0 모두.

답변

22

나는 Fluent NHibernate을 봐야한다고 생각합니다. 매핑을 생성하면 항상 80 %가됩니다. 원하는 것을 얻으려면 사용자 정의가 필요합니다. Fluent-NHibernate는 compile-safe와 refactor-friendly API로 엔티티를 매핑 할 수있게 해줍니다.

+1

제 생각에 청력이 떨림을 시작했다고 생각합니다. 나는 L2S에 대한 좋은 옵션을 찾기 위해 사냥을 해왔고 XML 때문에 NH에 대해별로 흥분하지 않았습니다. 정말 고마워. –

+0

나는 이것이 NHibernate를위한 비주얼 디자이너가 아니라는 점에 주목하고 싶다. –

+0

나는 Fluent에 대해 매우 부정적인 경험을했다. 그것은 나에게 90 %의 마크를 많이 주었고 내 바지를 내렸다. 다른 시각적 도구 인 DevArt Entity Developer에 대한 나의 경험은 비슷합니다. 즉, 90 %의 길을 얻은 다음 나를 교수형에 처하게합니다. 나는 여전히 작동하는 도구를 찾지 못했지만, 당신이 정말로 기본적인 사용을 기대하지 않고 너무 진보 된 것을 제외하고는,이 접근법들에 대해 경고 할 것입니다. –

2

나는 유창한 것에 대해 몇 가지 이야기를 들었지만 사용하지는 않았습니다. hbm 파일에 대해 인텔리 센스를 설정 했습니까? 난 그냥 내 자신의 XML 파일을 작성하지만, 내가 아는 것은 당신이 찾고있는 것이 아니다.

SQL 스크립트로 테이블을 생성하려면 무엇을 찾고 있습니까? Hibernate의 아름다움 중 하나는 flay 질의 생성에 있습니다. 따라서 모든 객체에 대해 SP를 생성 할 필요가 없습니다.

3

먼저 질문해야 할 질문은 발전기가 필요한 이유입니다. 솔직히, hbm 파일을 작성한 경험이 전혀 어렵지 않습니다.

실제로 hbm 파일을 쓰고 싶지 않다면 Active Record을 조사해야 할 것입니다.

+0

나는 당신의 요지를 얻었고 나는 당신에게 동의합니다. 나는 hbms 작성의 95 %가 다리 작업이고 나머지 5 % 만 생각할 필요가 있으므로 다리 작업을 완료하기 위해 무언가를 찾고있었습니다. – Dan

+4

데이터베이스에 충분한 테이블이 있다면 손으로 아무것도 쓰지 않는 것은 시간 낭비입니다 –

1

예, hbm 파일 작성은 매우 간단합니다.

그러나 큰 DB가있을 때 큰 고통입니다.

2

나는 NConstruct lite와 codesmith 둘 다 시도했다.

codesmith의 단점 : 내가 VB로 작성된 기존 asp.net 프로젝트에 대한 기존 데이터베이스에서 개체 모델을 얻을 필요, 이건 내 경험이다 테이블 사이

  • 가 검색하지 않는 상속
  • 데이터베이스 뷰 매핑되지 않습니다
  • 복잡한 사용

codesmith 전문가 :

  • 지원 PostgreSQL을 포함하여 DB 엔진의 많은에 대한 C# 및 VB를 생성
  • 비주얼 스튜디오 통합

NConstruct의 단점 :

  • 는 VB를 생성하지 않는 경우에만 C#
  • 일부 DB 엔진, SQL 서버, Oracle 및 MS 액세스

NConstruct 전문가 :

  • 간단한
  • 내 경우 NConstruct했던 전망

  • 자동으로 감지합니다 (1-1 관계) 일부 상속

    • 지도 작업의 약 60 % 나를 위해.

  • +2

    단일 개발자 라이선스 Codesmit = 299 달러, NConstruct = 198 달러 –

    5

    이 작업을 수행하는 상용 도구는 Visual NHibernate입니다. Visual NHibernate를 만드는 회사 인 Slyce Software에서 근무하고 있습니다.

    업데이트 : Visual NHibernate는 이제 오픈 소스입니다. 참조 : the announcement

    +1

    독점 개발자 라이선스 = 179 달러, 회사에서 근무하는 경우 299 달러 –

    8

    새로운 기능이 많고 유창한 nhibernate, 일대 다 및 다 대다 매핑을 지원하는 새로운 2.0 베타 2 릴리스가 출시되었습니다.

    http://www.codeplex.com/Wikipage?ProjectName=nmg

    +0

    작동합니다! 무료 및 오픈 소스 –

    +0

    아직 주름이 많이 .. 그것은 조금 dev에 사랑을 사용할 수 있습니다. –

    2

    당신은 Devart의 NHibernate에 디자이너를 살펴 보셔야합니다.