Tiêu đề là hiển nhiên, tôi cần phải biết nếu các phương thức được tuần tự hóa cùng với các cá thể đối tượng trong C#, tôi biết rằng chúng không có trong Java nhưng tôi là một chút mới đối với C#. Nếu không, tôi có phải đặt lớp gốc với luồng byte (đối tượng tuần tự) trong một gói khi gửi nó tới một PC khác không? Lớp gốc có thể giống như một tệp DLL không?Các phương thức cũng được tuần tự hóa cùng với các thành viên dữ liệu trong .NET?
Trả lời
Không. Thông tin loại được đăng, cùng với trạng thái. Để deserialize dữ liệu, chương trình của bạn sẽ cần phải có quyền truy cập vào các hội đồng có chứa các loại (bao gồm cả phương pháp).
Bạn đang nói lắp ráp sao cho các phương thức của lớp gốc như là một tệp DLL sẽ hoạt động tốt, đúng không? – Lisa
@Shaza: Có. Cả hai bên (serialization và deserialization) cần phải có assembly (thường là DLL) có chứa kiểu được serialized. Điều này cần phải được phát hiện để loại được instanced một cách chính xác bởi các lớp serialization. –
Phương thức không được sắp xếp theo thứ tự.
Tôi không biết về kịch bản của bạn, nhưng đưa vào một thư viện (assembly/dll) và sử dụng nó ở đầu kia để deserialize được tất cả các bạn.
Ps. bạn có lẽ nên tạo một số câu hỏi thêm một số câu hỏi với các yếu tố liên quan đến kịch bản của bạn. Nếu bạn dự định gửi động & chạy mã, bạn có thể tạo hậu quả bảo mật khủng khiếp.
Tôi đã nhầm lẫn khi .NET xuất hiện lần đầu tiên với tuần tự hóa. Tôi nghĩ nó xuất phát từ thực tế là hầu hết sách và hướng dẫn đề cập rằng nó cho phép bạn serialize 'các đối tượng' như XML và di chuyển chúng xung quanh, thực tế là bạn đang thực sự hydrating các giá trị của đối tượng của bạn để bạn có thể khử nước chúng sau này. không có lúc nào bạn đang lưu toàn bộ đối tượng vào đĩa vì nó sẽ yêu cầu dll và không được chứa trong tệp XML.
Nó có thể dễ hiểu hơn nếu bạn đã học C. Một lớp học như
class C
{
private int _m;
private int _n;
int Meth(int p)
{
return _m + _n + p;
}
}
là đường cơ bản cú pháp cho
typedef struct
{
int _m;
int _n;
// NO function pointers necessary
} C;
void C_Meth(C* obj, int p)
{
return obj->_m + obj->_n + p;
}
Đây thực chất là như thế nào phương pháp không ảo được thực hiện trong ngôn ngữ hướng đối tượng. Điều quan trọng ở đây là các phương thức là không phải là một phần của dữ liệu cá thể.
- 1. .NET Siêu dữ liệu tuần tự hóa nhị phân
- 2. Làm thế nào để tuần tự hóa các thành viên dữ liệu tĩnh của một lớp Java?
- 3. Ngăn chặn việc tuần tự hóa các thành viên null trong DataContractSerializer
- 4. phương pháp để tuần tự hóa các bảng lua
- 5. Trong Protobuf-net, có thể tuần tự hóa các lớp không được trang trí không?
- 6. Json.NET Tuần tự hóa các thành viên riêng và không phải các thuộc tính chỉ đọc
- 7. Các thành phần Swing và tuần tự hóa
- 8. Java "tuần tự hóa phương thức" của lớp ẩn danh
- 9. DataContractSerializer: Cách tuần tự hóa các lớp/thành viên mà không có thuộc tính DataContract/DataMember
- 10. Tuần tự hóa nhanh/giải tuần tự hóa các cấu trúc
- 11. F #, tuần tự hóa các công đoàn bị phân biệt đối xử với các giá trị thiếu dữ liệu
- 12. Cách tuần tự hóa hộp kiểm trong biểu mẫu thành dữ liệu Json
- 13. Các UID tuần tự không khớp trong EJB Phương thức từ xa - java.util.date & DBTimestamp
- 14. tuần tự hóa các đối tượng python thành XML
- 15. Tôi có thể tuần tự hóa các loại tùy ý với protobuf-net không?
- 16. Sử dụng bộ nhớ tuần tự các mảng byte được ghép nối với Protobuf-net
- 17. Lưu trữ một đối tượng được tuần tự hóa trong cơ sở dữ liệu MySql
- 18. lỗi với tuần tự hóa với protobuf
- 19. Tuyên truyền constness thành dữ liệu được chỉ định bởi các biến thành viên
- 20. JSON được tuần tự hóa với các phím được sắp xếp, sử dụng Jackson
- 21. Cách đính kèm siêu dữ liệu EXIF vào một bitmap được tuần tự hóa trong Android?
- 22. Có thể tuần tự hóa cùng một đối tượng tạo ra các luồng khác nhau không?
- 23. Đối tượng tuần tự hóa thành XmlDocument
- 24. Danh sách tuần tự hóa thành JSON
- 25. trường thoáng qua cuối cùng và tuần tự hóa
- 26. Bộ đệm giao thức C# .net - hỗ trợ protobuf-net để tuần tự hóa từ điển các giá trị đối tượng?
- 27. Các vấn đề với các lớp bên trong không tĩnh và tuần tự hóa trong Java
- 28. Trong định dạng nào là dữ liệu SQL Server được tuần tự hóa khi nó được gửi qua mạng?
- 29. Hiệu suất tuần tự hóa C++
- 30. Trong .NET, các cuộc gọi phương thức trống sẽ được tối ưu hóa?
Để biết thông tin, có ** rất nhiều ** API tuần tự hóa. Chúng hoạt động khác nhau - nó * âm thanh * giống như bạn đang sử dụng 'BinaryFormatter', nhưng nói chung bạn nên cố gắng rõ ràng về API bạn đang sử dụng. –
Bạn chưa nhận được bình luận của mình? – Lisa
BTW, serialization gần như không có gì để làm với C#, và tất cả mọi thứ để làm với. –