C# - FieldInfo 和 PropertyInfo 是不可变的还是可变的?

标签 c# immutability fxcop propertyinfo fieldinfo

基本上,我有以下内容:

protected static readonly FieldInfo SpecialField = FindSpecialField();

FxCop 向我提示,如果字段是可变的,我不应该将其设置为只读,因为成员可以更改。 FieldInfo 和 PropertyInfo 是不可变的还是可变的。基本上,我可以抑制此消息吗?

最佳答案

FieldInfo 本身看起来是不可变的,但它的变体可能是也可能不是。例如,FieldBuilder可以修改。 PropertyInfo 也是如此。

因此,如果您知道它始终是从反射获得的 FieldInfo,那么您很可能会安全。

关于C# - FieldInfo 和 PropertyInfo 是不可变的还是可变的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6430742/

相关文章:

c# - 在数据表的列中使用小数

java - 用@Immutable 注释一个不可变的Java 类有什么好处?

c# - 如果与 F# 类似物进行比较,为什么 C# 字符串的标题为 "Immutable"?

.net - VS 2017 & Nuget : How to find Analyzer packages with specific rules?

c# - 代码分析 Microsoft.Naming 关于缩写 "ID"的警告

c# - 将 Bitmap 对象保存为 jpeg 时的 "A generic error occurred in GDI+",c#

c# - Unity,奇怪的调试

java - 我们如何使用可变引用来保持类的不可变性

c# - fxcop 自定义规则 - 避免每个文件有多个类

c# - 信号处理 : C++ vs C#