[ProtoContract]
class A
{
[ProtoMember(1)]
public B bbb
{
get;set; //getter & setter is here
}
}
[ProtoContract]
public class B : IData
{
///???0
[ProtoMember(1)]
public IEnumerable <IData> subData
{
get;set; //getter & setter is here
//the setter puts some data inn structure that in fact contains List<T> plus some simple int's
}
///????
public interface IData: Iface1
{
///????
IEnumerable<Iface3> data2 {get;}
///????
IEnumerable<IData> subdata{get;}
}
当我尝试序列化一个类对象时,我收到一个错误:“没有为类型定义序列化程序:System.Collections.Generic.IEnumerable`1 [IData, namespaceMy, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]
问题是 - 我如何序列化和反序列化该 IEnumerable?
将 IEnumerable 更改为 List<> 是一个坏主意((该程序中的许多代码都在等待 IEnumerable 并引发大量错误。尽可能重复 - 在这种情况下,类型 T 不是接口