这个问题可能与我的问题非常相似,但我看不到我需要的答案。我有一个名为 的类CASM
,它有一个List<Action>
. 我想序列化这个类(使用BinaryFormatter
或类似的东西)。这个类和Action
s 中引用的所有类都有正确的[Serializable]
和[NonSerializable]
属性。
尝试序列化时出现问题 - 它给出了这个错误:
Type 'CASM.CASM+<>c__DisplayClass2c' in Assembly 'CASM, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null' is not marked as serializable.
这<>c__DisplayClass2c
是一个自动生成的内部类,它包含我在应用程序中使用的不同类型的匿名委托。但是,正如我们从下图中看到的那样,它不是[Serializable]
:
替代文字 http://bayimg.com/image/maebbaacj.jpg
更改我的应用程序以使其有效的最佳方法是什么?制作我自己的<>c__DisplayClass2c
-type 类并使其可序列化?或者,还有更好的方法?
编辑:最后我只是制作了自己的课程,而不是自动生成的课程。我也帮助调试,实际上有一个描述性的名称,而不仅仅是b__12()
.