- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为什么 SerializableAttribute 不包含在 Silverlight 版本的 FCL 中?
而且,BinaryFormatter 也不在那里。
我不是在寻找替代解决方案,我只是对这个事实感到好奇。
二进制序列化是否从根本上违反了 Silverlight 的某些设计规则?
最佳答案
首先,Silverlight 有不同的权限规则——在私有(private)领域更难获得。当然,对于 FCL 设计人员来说,我认为这不是问题——他们可以将其编码到运行时(但重新创建一种潜在的绕过沙箱的方法)。
也许最重要的是 Silverlight 不需要(或不想)支持“远程处理”,这是它必须存在于主要 .NET BCL 中的主要原因。当然,远程处理通常已经过时,但需要在核心 .NET 中才能向后兼容。
第三个原因很可能是 BinaryFormatter
的本质。 ; SL 中的许多类在 SL 运行时中有不同的实现,以说明不同的功能和可用类型/安全性等。这使得它几乎不可能 电线兼容使用核心 .NET 运行时。因此,您将无法与您的服务器代码共享它。
总的来说,那么,剪掉它是很有意义的。对于 app<===>server,存在基于合约的序列化器;和其他(我敢说:更好的)二进制序列化器可以避免所有这些问题(即完全可移植)。
关于.net - 为什么 SerializableAttribute 不包含在 Silverlight 版本的 FCL 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5700840/
当构造函数有参数但每个参数都有默认值时,是否存在对象序列化不起作用的技术原因? 例如,假设这是我要序列化的(伪)类: [SerializableAttribute] public class Para
我正在尝试在 C# 类库项目(最新的 .NET 版本)中使用 [Serializable] 属性,但它无法识别。 据我所知,Serializable it something that belongs
我正在查看其他人的 C# 代码,在公共(public)枚举之前有以下几行: [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30
我试图在一个针对 dnx451 和 dnxcore50 的简单类库中使用 [Serializable] 属性标记自定义异常类,但不幸的是我无法找出 SerializableAttribute 存在于哪
我正在玩序列化(特别是 XmlSerializer)并且有点困惑。 我打算序列化的类具有属性: [System.SerializableAttribute()] 这很好,但是当我从类派生时,我仍然可以
我有一个类,其中一个属性是枚举。像这样: //Do i need [Serializable] public enum SexEnum { Male,
我发现当涉及的数据类型没有 [DataContract] 时,我的 WCF 服务可以正常工作。 ,但 [Serializable]反而。 但是所有的 WCF 教程都显示了第一个而不是后者。为什么? 最
我从各种异常派生了几个类。现在 VS 在这个问题的标题中给出警告。 有人可以解释压制这条规则的含义吗? 你能解释一下来自 here 的规则吗?说“不要禁止针对异常类发出此规则的警告,因为它们必须可序列
为什么 SerializableAttribute 不包含在 Silverlight 版本的 FCL 中? 而且,BinaryFormatter 也不在那里。 我不是在寻找替代解决方案,我只是对这个事
我正在尝试学习使用 C# 序列化将对象保存到可以重新加载回对象的文件中。 我测试过的像这样的普通类 [Serializable()] public class PlainClass { pub
当我尝试序列化从 TableEntity 派生的实体时收到此错误消息: Type 'MyClass' cannot inherit from a type that is not marked wit
我是一名优秀的程序员,十分优秀!