12

Tôi đã tự hỏi nếu có thể có giao tiếp Fluent-NHibernate với các thủ tục đã lưu trữ đã tồn tại và gán ánh xạ từ tập hợp kết quả cho các đối tượng miền của riêng tôi.Fluent-NHibernate có hỗ trợ ánh xạ tới các thủ tục không?

Cũng Fluent-NHibernate có thể trực tiếp thực hiện các thủ tục mà không có bộ kết quả nào được trả về? Về cơ bản, tôi đã xem xét các tác động của việc sử dụng Fluent-NHibernate để thay thế một mô hình TypedDataSet ngày với một thiết kế điều khiển miền có thể trả về các đối tượng đơn giản từ DAL. Nếu Fluent-NHibernate không thể làm việc với SP một cách dễ dàng, tôi nghĩ rằng hầu hết tôi sẽ có một DAL combinational sẽ tận dụng lợi thế của FNH cho các hoạt động CRUD đơn giản trong khi vẫn để các thủ tục phức tạp được quản lý bởi Enterprise Library. Trong khi tôi không nghĩ rằng nó sẽ là tối ưu để có 2 DAL cạnh tranh nếu FNH không thể chơi tốt với SP, tôi rất muốn nghe bất kỳ ý tưởng nào khác ngoài việc sử dụng cả EntLib và FNH cùng nhau.

+0

@Gregory Tôi đã xem blog của bạn và thành thật mà nói tôi không biết, tôi đã bị rơi xuống với NHibernate/FNH và đã lưu giữ mọi thứ sắp ra khỏi chúng. Điều này có vẻ như nó sẽ là một câu hỏi hay để mở trên stack stack mặc dù. –

Trả lời

6

Phiên bản trunk của Fluent NHibernate (trên GitHub) hỗ trợ chèn, cập nhật và xóa các thủ tục đã lưu.

Trong constructor lớp bản đồ của bạn, hãy gọi:

SqlInsert("StoredProcName"); 

Disclaimer: Tôi chưa được thử nghiệm này bản thân mình, nhưng chắc chắn nó sẽ có ích sớm.

Để biết thêm thông tin, hãy xem this thread trong nhóm Google Fluent NHibernate.

+0

Rất vui được biết tất nhiên những thứ này ít hữu ích hơn các quy trình lựa chọn nhưng tôi đoán rằng nó sẽ trở thành rất nhiều chương trình khác. –

+0

Có ... việc triển khai hiện tại không phải là rất hữu ích. Trong mọi trường hợp FNH hỗ trợ đầy đủ (* sob *) các thủ tục được lưu trữ CRUD, nó vẫn cần thêm hỗ trợ cho các phần tử "bộ nạp" và "truy vấn sql". Nhưng tôi không nghĩ rằng có bất kỳ tiến bộ nào ở đó. –

11

Chỉ để trả lời câu hỏi của riêng tôi, câu trả lời là không có gì khác hơn là bạn có thể viết xml mapppings cho NHibernate và kết hợp chúng với ánh xạ Fluent-NHibernate. Bản đồ SP cho FNH rất có thể sẽ được thêm vào sau.

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