2010-04-05 21 views
7

Tôi sẽ sớm bắt đầu một dự án mới, sử dụng .Net 3.5 và Winform trên cơ sở dữ liệu Oracle. Chúng tôi đã lên kế hoạch sử dụng ORM. NHibernate đã được đề xuất bởi kiến ​​trúc sư của chúng tôi. Vì cá nhân tôi quen thuộc hơn với Entity Framework, tôi nghĩ rằng nó sẽ dễ sử dụng hơn NHibernate. Nhưng vì không có bất kỳ điều khoản chính thức nào từ Oracle, chúng tôi có khả năng chống lại việc sử dụng nó.ORM For .Net ON Oracle

Vì vậy, câu hỏi của tôi: Tôi đã xem xét các nhà cung cấp khác nhau có sẵn và tìm thấy một số:

  • DevArt
  • DataDirct
  • EFOracleProvider

Vì vậy, tôi muốn có một số thức ăn chăn nuôi trở lại trên mỗi người trong số họ - ưu và con, thiếu tính năng, công cụ như thế, từ những người sử dụng chúng, và biết nếu chúng ta tốt hơn với NHibernate?

Cảm ơn sự giúp đỡ.

Trả lời

7

Kiến trúc sư của bạn là đúng - NHibernate chỉ đơn giản là một ORM tuyệt vời.

NHibernate không đi kèm với các nhà thiết kế trực quan mà EF đi kèm và giữ cho tất cả XML đó đồng bộ với cả lược đồ/di chuyển và định nghĩa lớp một công việc. May mắn thay, có một người lập bản đồ tự động được gọi là FluentNHibernate có thể làm cho cả khía cạnh của NHibernate liền mạch (bạn có thể tùy chỉnh ánh xạ trên cơ sở mỗi bảng hoặc mỗi cột nếu bạn muốn và cũng ghi đè lên các quy ước tự động lập bản đồ).

Các thành phần truy cập dữ liệu mà Microsoft đưa ra có xu hướng thấp hơn và có xu hướng dựa vào các nhà thiết kế trực quan. Đó không phải là cách tôi muốn làm việc. Cá nhân, tôi muốn một thư viện cấp cao hoạt động sau hậu trường và không yêu cầu máy móc ưa thích để thiết lập và duy trì.

Đừng làm cho tôi sai - một số điều Microsoft đưa ra là tuyệt vời, chẳng hạn như nền tảng .NET nói chung. Tôi chỉ nghĩ rằng Microsoft không nhắm mục tiêu tôi và nhu cầu của tôi với các chiến lược truy cập dữ liệu của nó gần như cũng như NHibernate.

+0

+1. Chỉ cần hoàn thành một dự án với .NET 3.5 và Fluent NHibernate và nó không phải là xấu. Có một vài kinks, nhưng họ đã dễ dàng tìm ra. –

+0

Có các nhà thiết kế trực quan cho NHibernate. NHibernate có thể sử dụng mà không cần XML. Sự kiện quan trọng. –

+0

Thx cho phản hồi, tôi không biết FluentNHibernate, tôi chắc chắn sẽ xem xét nó. –

Các vấn đề liên quan