Tag: fxcop immutability

不可变的只读引用类型和FXCop违规:不要声明只读可变引用类型

我一直试图绕过FXCop违规行为“DoNotDeclareReadOnlyMutableReferenceTypes” MSDN: http : //msdn.microsoft.com/en-us/library/ms182302%28VS.80%29.aspx 来自MSDN的代码会导致此违规: namespace SecurityLibrary { public class MutableReferenceTypes { static protected readonly StringBuilder SomeStringBuilder; static MutableReferenceTypes() { SomeStringBuilder = new StringBuilder(); } } } 从Jon 在这里和这里的答案,我理解持有对象引用的字段(在本例中为SomeStringBuilder)是readonly而不是对象本身(由new StringBuilder()创建) 所以以这个例子为例,一旦该字段引用它,我将如何更改对象本身? 我喜欢Eric Lippert关于如何更改readonly数组的示例 ,并希望看到类似于任何其他可变引用类型的内容