use*_*032 1 .net generics serialization
我所要做的就是
XmlSerializer serializer = new XmlSerializer(typeof(Stack<int>));
Run Code Online (Sandbox Code Playgroud)
我在运行时得到以下内容:
System.InvalidOperationException
:您必须在System.Collections.Generic.Stack
`1 [[System.Int32,mscorlib,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089]] 上实现默认访问器,
因为它继承自ICollection.
我不应该序列化Stack<int>
吗?
由于Stack类没有默认访问器(例如通过索引),因此无法使用该方法对其进行序列化.
我建议将堆栈复制到List然后序列化列表.
List<int> serializableLIst = new List<int>( myStack );
XmlSerializer serializer = new XmlSeralizer(typeof(List<int>));
Run Code Online (Sandbox Code Playgroud)
看看是否效果不佳.