Có cách nào để Hủy số hóa biểu thức trong C # không, tôi muốn lưu trữ Biểu thức trong Cơ sở dữ liệu và tải chúng khi chạy.
Có cách nào để Hủy số hóa biểu thức trong C # không, tôi muốn lưu trữ Biểu thức trong Cơ sở dữ liệu và tải chúng khi chạy.
Câu trả lời:
Tôi tiếp tục làm việc trên thư viện đã được đề cập bởi Serializing and Deserializing Expression Trees in C #
Có vẻ như dự án đã bị bỏ rơi (2008) nhưng tôi đã thực hiện một số thao tác với nó và bây giờ nó hoạt động với .NET 4.0 và Silverlight. Tôi đã sửa lỗi cho mã của họ và cũng làm cho nó độc lập với DAL hơn.
Tùy chọn khác là dự án Chuỗi chuỗi biểu thức trên code.msdn.com - sẽ có nhiều hơn những gì cần thiết ở đây?
UPD: Hiện tại http://archive.msdn.microsoft.com/exprserialization
Có một dự án trên GitHub / Nuget tên là MetaLinq nhằm mục đích làm cho việc làm việc với biểu thức tress dễ dàng hơn.
Nó chuyển đổi giữa các Biểu thức bình thường và 'Biểu thức có thể chỉnh sửa', có thể thay đổi và hoàn toàn có thể tuần tự hóa, vì vậy có thể được sử dụng với Json, Xml, Binary, v.v.
Cũng kiểm tra bài đăng trên blog này để biết thêm thông tin.
hãy xem thư viện mới của tôi Serialize.Linq . Nó tuần tự hóa các biểu thức linq thành json, xml và binary.
Không đầy đủ; tuy nhiên, mẫu Dynamic LINQ có thể giúp ích một chút. Bạn chắc chắn có thể tuần tự hóa một biểu thức thành một chuỗi (ở một mức độ nào đó - generics trông hơi rắc rối), nhưng không có trình phân tích cú pháp sẵn có.
WCF RIA Services cho phép tuần tự hóa IQuerayble<T>
Tôi đang làm việc trong một dự án để tuần tự hóa các biểu thức. Nó ổn và bạn có thể sử dụng nó. http://www.codeproject.com/Articles/851187/ServicePredicateBuilder-for-creating-Serializable