Trong .NET (ít nhất < = 2) có một vấn đề serializing các đối tượng nâng cao sự kiện khi các sự kiện đó được xử lý bởi một đối tượng không thể tuần tự hóa (giống như Windows Form).Do. NET 3/4 Cho phép các sự kiện bị nhị phân De/được tuần tự hóa?
Vì cách thức VB.NET thực hiện các sự kiện, khi bạn sắp xếp một đối tượng, các sự kiện của nó cũng được sắp xếp theo thứ tự (vì các sự kiện được thực hiện bằng cách sử dụng các trường ủy nhiệm multicast ẩn). Một tác dụng phụ của việc này là bất kỳ đối tượng nào xử lý các sự kiện được tạo ra bởi đối tượng đang được tuần tự hóa sẽ được coi là một phần của đồ thị đối tượng và sẽ được tuần tự hóa.
Một số cách giải quyết có thể được tìm thấy, thực hiện tuần tự tùy chỉnh hoặc sử dụng các đại biểu thay vì sự kiện:
- http://www.codeproject.com/KB/vb/serializevbclasses.aspx
- http://www.lhotka.net/WeBlog/CommentView.aspx?guid=776f44e8-aaec-4845-b649-e0d840e6de2c
Tuy nhiên không ai trong số họ có vẻ đáp ứng hoàn toàn các tác giả và người sử dụng.
.NET 3/4 có giải quyết được sự cố này không?
Vấn đề này là không cụ thể cho VB.NET - đó là cách NET làm việc. –
Tuy nhiên với C# ve có thể tìm thấy một giải pháp "linh hoạt" hơn bằng cách sử dụng '[Field: NonSerialized]'. Ít nhất, không có nhu cầu đặc biệt để viết mã trợ giúp bổ sung để giải quyết vấn đề. – serhio
@serhio: không phải thuộc tính đó cũng hoạt động VB? Tại sao không? Tôi không nói về 'WithEvents'. –