gpt4 book ai didi

c# - 如何使用反射获取对象的属性?

转载 作者:行者123 更新时间:2023-11-30 22:50:59 25 4
gpt4 key购买 nike

我知道我可以做到这一点

foreach (PropertyInfo property in myobject.GetType().GetProperties())
{
if (property.DeclaringType.ToString() == myobject.GetType().ToString())
{
// only have my object properties here
// and not parent of my object properties
}
}

但是我怎样才能只是获得 myobject 的属性而不是父对象的属性呢?即不必执行额外的 if 语句。

编辑答案,(感谢@Greg Beech)这有效:-

foreach (PropertyInfo property in 
myobject.GetType().GetProperties
(BindingFlags.Public |
BindingFlags.DeclaredOnly |
BindingFlags.Instance))
{
// only properties of my object not parent of myobject
}

我也找到了这个链接 http://msdn.microsoft.com/en-us/library/4ek9c21e.aspx

最佳答案

查看 BindingFlags.DeclaredOnly 并将其传递给 GetProperties(您可能希望将其与 BindingFlags.PublicBindingFlags.Instance 至少)。

关于c# - 如何使用反射获取对象的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/245401/

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