Tôi hiện đang xem xét các cách có thể để chúng tôi có thể tái cấu trúc codebase của mình, để làm việc dễ dàng hơn.Di chuyển từ DataSets sang EntityFramework
Ứng dụng là ứng dụng Web Asp.Net khá lớn, với tất cả cài đặt/truy xuất dữ liệu xảy ra thông qua Dịch vụ web. Hiện tại, các WebServices này trả về DataSets, chứa 1 hoặc nhiều bảng được trả về từ các thủ tục lưu sẵn. Các codebase là khá chặt chẽ kết nối, với ASP code-đằng sau gọi WebServices ở nhiều nơi, và hầu hết các logic kinh doanh xảy ra hoặc trong code-behind hoặc trong các thủ tục lưu trữ.
Trong một thời gian, chúng tôi đã xem xét các cách có thể để cập nhật ứng dụng và hiện đại hóa mã cơ sở. Chúng ta không thể (và không muốn) viết lại toàn bộ ứng dụng, nhưng nó sẽ là tuyệt vời nếu chúng ta có thể bắt đầu di chuyển nó, từng chút một, hướng tới một kiến trúc mới hơn. Tôi đã xem xét kiến trúc MVP, có vẻ như nó phù hợp với kiến trúc hiện tại của chúng tôi - nó sẽ không liên quan đến quá nhiều lần viết lại, nhưng vẫn dẫn đến mã có thể thử nghiệm hơn (mục tiêu khác - chúng tôi hiện không có tự động thử nghiệm).
Tôi muốn biết, tuy nhiên, nếu bất kỳ ai có một số mẹo/thông tin/bài viết về việc chuyển từ DataSets sang EntityFramework. Tôi cảm thấy rằng điều này sẽ tạo ra lợi thế lớn nhất cho chúng tôi, vì nó sẽ cho phép chúng tôi lập mô hình dữ liệu của mình và thử nghiệm nó dễ dàng hơn nhiều. Thật không may, tôi chưa thể tìm thấy bất kỳ điều gì trực tuyến về loại di chuyển này. Thiết kế cơ sở dữ liệu của chúng ta khá tốt (may mắn), nhưng chúng ta sẽ phải làm việc với cả DataSets và EntityFramework trong một thời gian cho đến khi chúng ta loại bỏ DataSets - không có cách nào chúng ta có thể làm tất cả cùng một lúc.
Bất kỳ ai có thể đưa ra lời khuyên về điều này?
Bạn có tiếp tục sử dụng WebServices để trả về dữ liệu hiện đang ở dạng Số liệu không? Hay ứng dụng của bạn sẽ trực tiếp chạm vào cơ sở dữ liệu thông qua EntityFramework? –
@ John Tôi nghĩ rằng chúng tôi vẫn sẽ cần phải sử dụng Dịch vụ Web bằng cách nào đó. Chúng tôi sử dụng cùng một Dịch vụ Web để truy xuất dữ liệu trong Microsoft InfoPath, mà chúng tôi cũng không thể loại bỏ được. –