gpt4 book ai didi

c# - IReadOnlyList 和 setter

转载 作者:行者123 更新时间:2023-12-04 10:05:35 26 4
gpt4 key购买 nike

属性的属性是 IReadOnlyList 是什么意思但它有一个二传手?我的困惑是,如果 List 是只读的,那么为什么我们需要 setter?

public IReadOnlyList<string> FilteredProductId { get; set; }

最佳答案

你说得对,他们保护了,这很奇怪。内容 FilteredProductId ,但不是实例本身。我本来希望至少有一个私有(private)二传手。这种设置可以防止使用该代码的人做他不应该做的事情。

这是什么意思?好吧,FilteredProductId 没有得到完全保护。但是,可能不需要完全保护(实例和内容)。只是缺少一个Add()功能是防止意外修改的严重保护。没有人可以意外地将任何内容添加到列表中。

并创建一个新的只读集合并在那里进行评估?这也涉及。也不是大多数人偶然做的事情。所以保护实际上可能就足够了。

关于c# - IReadOnlyList<T> 和 setter ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61603821/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com