【发布时间】:2015-06-04 16:50:54
【问题描述】:
我有一个无法正确序列化的公共类。尝试时,会抛出以下异常:
数据协定类型“MyProject.MyClass”不可序列化,因为它不是公共的。公开类型将修复此错误。或者,您可以将其设为内部,并在程序集上使用 InternalsVisibleToAttribute 属性以启用内部成员的序列化 - 有关更多详细信息,请参阅文档。请注意,这样做有一定的安全隐患。
不过,我的班级是公开的:
[DataContract]
public class MyClass
{
[DataMember]
public string Name { get; set; }
[DataMember]
private int Count;
public MyClass()
{
Name = string.Empty;
Count = 0;
}
}
当课程明确公开时,为什么我会收到此异常?
【问题讨论】:
标签: c# windows-phone-7