Khi tôi bắt đầu sử dụng NHibernate, tôi đã không tìm hiểu về Castle ActiveRecord cho đến khi tôi đã viết các tệp Bản đồ và tạo các lớp học của mình. Tại thời điểm đó, tôi không thể nhận ra rõ ràng những gì Castle Activerecord sẽ cho tôi, vì vậy tôi đã không sử dụng nó.
Lần thứ hai tôi sử dụng NHibernate, tôi chỉ đơn giản sử dụng myGeneration để tạo các tệp ánh xạ và các lớp chỉ bằng cách nhìn vào cơ sở dữ liệu của tôi. Điều đó tiết kiệm rất nhiều thời gian của chính nó, và cho phép tôi (một lần nữa) không phải lo lắng về Castle Active Record. Trong thực tế, hầu hết thời gian của bạn sẽ được chi tiêu cho việc thực hiện các truy vấn tùy chỉnh, và Castle Active Record sẽ không nhất thiết phải giúp với điều đó - nếu bạn sử dụng myGeneration với NHibernate, bạn sẽ bỏ qua hầu hết các công việc bạn cần làm.
Chỉnh sửa: Tôi không muốn có vẻ như một người cổ vũ cho cả myGeneration hoặc NHibernate. Tôi chỉ sử dụng công cụ cho phép tôi hoàn thành công việc một cách nhanh chóng và dễ dàng. Tôi mất ít thời gian hơn để viết mã truy cập dữ liệu, càng tốt. Nó không có nghĩa là tôi không thể làm điều đó - nhưng có rất ít ý nghĩa trong việc tái phát minh ra bánh xe mỗi khi bạn viết một ứng dụng mới. Viết các truy vấn SQL và các thủ tục lưu sẵn khi cần thiết và không có nơi nào khác. Nếu bạn đang thực hiện các hoạt động CRUD, ORM là cách để đi.
Chỉnh sửa # 2: Castle Active Record có thể mang lại nhiều hơn bảng so với tôi nhận ra - Tôi không biết nhiều khác than what's on their website, nhưng nếu nó mang lại nhiều hơn cho bảng, sau đó nó sẽ giúp tiềm năng chấp nhận để có thể để dễ dàng thấy điều đó trên trang web của họ.
Nguồn
2008-12-15 23:31:07