gpt4 book ai didi

c# - 使用反射获取 PropertyInfo,只想查看具有修改器的访问器

转载 作者:行者123 更新时间:2023-11-30 20:07:07 26 4
gpt4 key购买 nike

使用反射我只想检索具有 getset 方法的属性,而忽略只有 get 的属性.我想做的是为用户提供他/她能够更改的变量列表,因此向他们显示只有 get 方法的属性会产生误导。

给定下面的代码,用户只会看到 Name。或者我可以向他们展示两者,但将 UniqueID 显示为灰色,这样他们就知道他们无法更改它。

public Int64 UniqueID
{
get { return this.uniqueID; }
}

public String Name
{
get { return this.name; }
set { this.name = value; }
}

背景信息:我正在使用 C# 4.0。

最佳答案

您可以使用 CanReadCanWrite 属性:

Type type = ...
var readWriteProps = type.GetProperties()
.Where(p => p.CanRead && p.CanWrite);

请注意,上述查询仅查找具有公共(public)访问器的公共(public)属性。

关于c# - 使用反射获取 PropertyInfo,只想查看具有修改器的访问器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8867953/

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