考虑以下代码,这激发了
CA2104: Do not declare read only mutable reference types.
public class Test { // This provokes CA2104: "Do not declare read only mutable reference types". protected readonly ImmutableClass ImmutableMember; } public class ImmutableClass { }
有没有人知道一种方式来标记一个类是不可变的,会抑制CA2104的警告?
我尝试用[ImmutableObject(true)]
装饰MutableClass,没有成功的希望(因为该属性对于表单编辑器使用来说非常明显),并且确实不起作用.
我假设在确定是否发出CA2104时,Code Analysis正在使用已知的不可变类型列表,所以我们不能使用相同的方法.
我猜,即使你可以将一个类标记为不可变的,编译器也无法真正地检查它是否是真的,但至少它可能是一个有用的指标.
目前还没有其他办法可以做到这一点.
原文地址:https://www.jb51.cc/csharp/95211.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。