2009-02-18 36 views
5

Tôi đã triển khai giải pháp EF được SQLServer 2005 hỗ trợ cho ứng dụng doanh nghiệp mà tôi đang thực hiện và đã hoạt động tốt.Lớp lưu trữ cục bộ cho Entity Framework?

Tôi đang gặp phải sự cố ở chỗ tôi muốn cho phép người dùng làm việc mà không có cơ sở dữ liệu trong khi sử dụng cùng một thực thể.

Tôi không muốn truy cập cơ sở dữ liệu cục bộ vì lý do di động. Ngoài ra, thật dễ dàng để gửi một cơ sở dữ liệu nhỏ qua email nếu nó chỉ là một tệp XML.

Vì vậy, tôi biết rằng một Số liệu có thể được lưu trữ và được tải từ một tệp XML, lược đồ và tất cả. Có cách nào để sử dụng một (hoặc hai hoặc ba) tệp XML làm lớp lưu trữ của EF không?

Vì khung thực thể được xây dựng trên đầu trang của ADO.Net, tôi đã mong đợi có một Nhà cung cấp dữ liệu XML về các loại. Sau đó, mô hình thực thể có thể được thực hiện để chạy một tệp XML. Tôi đã gặp nhà thiết kế DataSet cho phép tôi tạo lược đồ và lưu và tải từ một tệp tin XML, nhưng nó không chuyển sang EF, vì EF sử dụng Dịch vụ đối tượng thay cho DataSet (sửa tôi nếu tôi sai). nó here at MSDN).

Tôi đã xem qua số WilsonXmlDbClient library, được cho là Trình cung cấp dữ liệu XML cho ADO.Net. Có vẻ như cũ, và tôi không thực sự biết bắt đầu từ đâu.

Tôi biết rằng XML không phải là lựa chọn đầu tiên của bất kỳ ai để lưu trữ dữ liệu quan hệ, tuy nhiên, tôi đang tìm cách làm việc với các tệp 1Mb hoặc nhỏ hơn.

TIA

+0

Vì vậy, tôi biết điều này không trả lời câu hỏi của bạn theo cách bạn muốn câu trả lời, nhưng SQL Express là miễn phí. . . tại sao không cung cấp cơ sở dữ liệu của bạn dưới dạng tập lệnh * .SQL để xây dựng và tải cơ sở dữ liệu? Đầy đủ chức năng, bao gồm lược đồ, thủ tục lưu trữ, dữ liệu và bất cứ thứ gì bạn cần/muốn. . . miễn phí, chỉ một lần cài đặt miễn phí từ một nhà sản xuất nổi tiếng đáng tin cậy. – Frank

Trả lời

2

Một cách để làm điều này là sử dụng khung đồng bộ hóa Microsofts. http://msdn.microsoft.com/en-us/sync/default.

Sau đó, bạn sẽ sử dụng SQL Server express hoặc Compact Edition trên máy khách.

Khung đồng bộ hóa và phiên bản SQL Server Express và Compact miễn phí.

+0

+1 SQL CE + Khung công tác đồng bộ hóa có lẽ là cách dễ nhất để thực hiện. Nó không cần cài đặt - nó chỉ là tập hợp các dll được triển khai với ứng dụng và nó chạy trong quá trình ứng dụng. Nếu bạn không thích ý tưởng của SQL CE, bạn sẽ phải xây dựng nhà cung cấp dữ liệu của riêng bạn và công cụ đồng bộ hóa - khá nhiều công việc cần làm. –

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