gpt4 book ai didi

c# - 如何使用 .Net 反射按忽略大小写的名称搜索属性?

转载 作者:太空狗 更新时间:2023-10-29 22:11:41 26 4
gpt4 key购买 nike

我有以下代码片段可以按名称搜索实例的属性:

var prop = Backend.GetType().GetProperty(fieldName);

现在我想忽略 fieldName 的大小写,所以我尝试了以下操作:

var prop = Backend.GetType().GetProperty(fieldName, BindingFlags.IgnoreCase);

... 没有骰子。现在 prop 不会找到具有确切大小写的字段名称。

因此……如何使用 .Net 反射按名称忽略大小写搜索属性?

最佳答案

您需要指定BindingFlags.Public | BindingFlags.Instance 以及:

using System;
using System.Reflection;

public class Test
{
private int foo;

public int Foo { get { return foo; } }

static void Main()
{
var prop = typeof(Test).GetProperty("foo",
BindingFlags.Public
| BindingFlags.Instance
| BindingFlags.IgnoreCase);
Console.WriteLine(prop);
}
}

(当您不指定任何标志时,默认提供 public、instance 和 static。如果您明确指定它,我建议您只指定 instance 或 static 之一,前提是您知道自己需要什么。)

关于c# - 如何使用 .Net 反射按忽略大小写的名称搜索属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/279374/

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