问题标签 [iserializable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
295 浏览

c# - 如何正确序列化 .net 4.7.[x]+ 和 .net Standard 2.[x]+ 中的异常

我有一些Exception派生类型,它们为Exception. 在网上搜索有关如何处理此类Exception基于类型的序列化的示例和指南导致描述和代码示例相当陈旧。尝试这些样本总是会导致安全错误。为了使它工作,我必须额外用属性装饰GetObjectData-Method 。System.Security.SecurityCritical

有趣的SecurityPermission是,所有示例中都包含但以各种方式包含的 -Attribute 似乎不是必需的。有些示例仅将其添加到 . GetObjectData,有些示例还将其添加到反序列化构造函数中。一些示例使用了强大的SecurityAction.Demand-action,大多数示例使用了SecurityAction.LinkDemand-action 和其他声明的SecurityAction.RequestMinimum

我的问题是,以下Exception派生类型(对于它的序列化部分)是否适合与当今的 .net 框架(4.7.[x]+、Core[x]、Standard2.[x]+)一起使用,或者如果有什么东西不见了,或者我什至可以删除一些零件?请注意,我不想密封类型。其他Exception类型应该能够从中派生。

派生类型 ( FooBarException) 还必须SecurityCritical在反序列化构造函数上设置 - 属性以满足LinkDemand

来源
https://stackoverflow.com/a/100369/340628

https://docs.microsoft.com/en-us/dotnet/api/system.runtime.serialization.iserializable.getobjectdata?view=netframework-4.8

使自定义 .NET 异常可序列化的正确方法是什么?

https://blog.gurock.com/articles/creating-custom-exceptions-in-dotnet/

0 投票
1 回答
51 浏览

c# - 使用 ISerializable 进行序列化/反序列化

早上好,我正在开发一个 C# 应用程序,我需要使用 ISerializable 接口序列化一个对象,但我不知道如何去做。我的对象没有属性,它只有一些方法。请参阅下面的代码:

我的问题是我必须放入 GetObjectData 什么?

预先感谢您的任何帮助。

罗曼。