我想要将一些由LINQ生成的对象序列化并以二进制字段的形式存储在表中(不用关心为什么)。我想编写一些类似于以下代码的代码:
SerialTestDataContext db = new SerialTestDataContext();
relation_table row = db.relation_tables.First();
MemoryStream memStream = new MemoryStream();
BinaryFormatter bin = new BinaryFormatter();
bin.Serialize(memStream, row);
Console.WriteLine("Serilized successfully");
TestTable tt = new testTable();
tt.data = new System.Data.Linq.Binary(memStream.ToArray());
db.testTables.InsertOnSubmit(tt);
db.SubmitChanges();
Console.WriteLine("Inserted successfully");
尽管我已将生成的类标记为[Serializable],但当前操作仍然失败,因为其中一个LINQ继承类不是[Serializable]的。这种情况是否可能发生?
NetDataContractSerializer
进行序列化时,对于具有类型为EntitySet<T>
的属性的实体似乎无法正常工作 :( - Oleks