c# - 如何修复 'Remove property setter' 构建错误?

标签 c# asp.net-mvc

我在具有自动属性 ​​getter 和 setter 的模型中有一个属性:

[DataMember]
public Collection<DTOObjects> CollectionName { get; set; }

构建解决方案时出现以下错误:

Microsoft.Usage : Change 'propertyname' to be read-only by removing the property setter.

但是,当我删除 setter 并运行代码时,出现错误,因为它正在尝试设置属性!它似乎要求我删除 setter ,尽管它已在代码中的某处设置。

有没有其他人遇到过这个问题?我需要修改什么?

最佳答案

我猜这是一个列表/集合(或类似的东西),在这种情况下是的 - 有一个 setter 是不寻常的。一个典型的例子可能是:

private readonly List<Foo> items = new List<Foo>();
public List<Foo> Items { get { return items; } }

大多数调用者不应该试图分配给它;他们不应该需要 - 他们可以添加/删除/枚举/清除/等等列表而无需分配它。

an error occurs because it's trying to set the property

然后考虑更改该代码,使其不会尝试设置该属性。在几乎所有情况下,不需要

关于c# - 如何修复 'Remove property setter' 构建错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13083790/

相关文章:

c# - 有理数结构的默认值

c# - 为什么在 Sort 中使用 Random 会导致 [Unable to sort IComparer.Compare error]

c# - 使用 LINQ 将常量字符串连接到 List<string> 中的每个项目

asp.net-mvc - 如何在 ASP.NET mvc 页面上显示主从数据?

c# - .NET 运行时 (CLR)、JIT 编译器究竟位于何处?

使用 lambda 表达式的 C# 二次排序

asp.net - 有人为 ASP.NET MVC 实现了 RadioButtonList For<T> 吗?

asp.net-mvc - 本地主机拒绝连接 Visual Studio 中的错误

asp.net-mvc - 如何使用 Reacjs.Net 和 Redux 一起进行服务器端渲染?

c# - ASP.NET MVC, 'Ticket Required' 属性