4
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;

VS 说,命名空间 'System.Runtime.Serialization' 中不存在类型或命名空间名称 'Formatters'。好吧,我应该添加这个参考。单击项目 > 添加引用 > .NET,在那里我只能看到 System.Runtime.Serialization,没有像 Formatters 这样的东西。

System.Runtime.Serialization.dll 似乎在c:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\Silverlight\v4.0\Profile\WindowsPhone71\- 那里没有 Formatters,也没有 Formatters.Binary。

如何找到这个参考?

4

2 回答 2

4

(或 Windows Phone)BinaryFormatter不支持。Silverlight

于 2012-06-19T15:59:35.440 回答
3

所以显然 Silverlight 没有BinaryFormatter. 但是,存在一个开源项目,它可能能够为您提供类似的功能。它被称为SharpSerializer它将与 Silverlight 和 WP7 一起使用

我将另一半的答案保留在下面,虽然不适合 Silverlight,但可能对那些在其他项目中仍然缺少上述参考的人有所帮助,因为它应该更正它。


对于不使用 Silverlight 并且可以访问的其他项目,BinaryFormatter您的目标框架设置可能不正确。

确保您使用的是完整的.NET Framework 4 Profile而不是.NET Framework 4 Client Profile项目中的作为目标框架。请参见下图,您可以在项目的属性中找到这些设置。

设置目标框架

于 2012-06-19T15:59:37.500 回答