在C#中,OptionalField已经过时了?

Cla*_*sen 3 .net c#

使用BinaryFormatter进行序列化似乎不再需要OptionalFieldAttribute(如果有的话).

使用codeguru中示例,在Visual Studio 2010中构建代码时不会抛出任何异常,即使在定位.NET框架的旧版本时也是如此.

stackoverflow的另一个问题表明它始终是可选的.这是真的?如果是这样,在.NET中序列化为二进制内容时,实际上是否有任何方法可以获得缺少字段的异常?

Han*_*ant 6

要获取异常,请将此语句添加到反序列化代码中:

        formatter.AssemblyFormat = FormatterAssemblyStyle.Full;
Run Code Online (Sandbox Code Playgroud)