作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在托管环境中运行一个网站(即我无法控制权限)并且它设置为以中等信任度运行。我正在使用的代码序列化对象以保存在数据库中并使用 BinaryFormatter。但是,这会引发在中等信任下运行的 SecurityException。
是否有可以在中等信任度下运行的替代二进制格式化程序?
最佳答案
BinaryFormatter 不是为在部分信任下工作而设计的。 .NET Framework 有其他可用的格式化程序,它们以部分信任的方式工作:
XmlSerializer 和 DataContractSerializer 适用于序列化记录等类型,其中对象图是有限的,并且所有要序列化的类型都是提前知道的。它们还可以与其他非 .NET 框架进行互操作。 NetDataContractSerializer 更适合通用的 .NET 框架序列化,在这种情况下,您可能无法提前知道图中要序列化的所有类型。最大的缺点是它不能轻松地与其他非 .NET 框架进行互操作,因为它在序列化流中包含类型信息。
无论您使用哪种序列化程序,某些类型根本无法在部分信任的情况下进行序列化。参见 http://msdn.microsoft.com/en-us/library/bb412175.aspx了解更多信息。
关于c# - 是否有以中等信任度运行的 BinaryFormatter 替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5018934/
我是一名优秀的程序员,十分优秀!