skb*_*skb 16 .net c# serialization nonserializedattribute
我无法在任何地方找到"字段"列为C#关键字.有谁知道这个背景?
jas*_*son 13
例如,如果要将事件标记为不可序列化,则这是必需的.它指定属性适用的目标.
它是属性目标语法的一部分.从规格:
attribute-target:
field
event
method
param
property
return
type
Run Code Online (Sandbox Code Playgroud)
另请参阅以下文档NonSerializedAttribute:
要将
NonSerializedAttribute类应用于事件,请将属性位置设置为字段,如以下C#代码所示.
[field:NonSerializedAttribute()]
public event ChangedEventHandler Changed;
C#编译器通常可以搞清楚该属性适用于哪个声明部分.我可以想到你可以使用它的三种情况:
这意味着允许您在字段上设置NonSerialized属性,这在序列化事件时很有用.
例如,这会给你一个编译错误
[NonSerialized]
public event SomeEventHandler SomeEvent;
Run Code Online (Sandbox Code Playgroud)
要解决这个问题,你必须使用 field:
[field:NonSerialized]
public event SomeEventHandler SomeEvent;
Run Code Online (Sandbox Code Playgroud)
更多相关信息 - 代表和序列化
| 归档时间: |
|
| 查看次数: |
5852 次 |
| 最近记录: |