如何使用c#属性?

如何使用c#属性?,c#,.net,custom-attributes,C#,.net,Custom Attributes,我必须从几个类创建一个pdf报告,这些类将包含几个属性。 我需要显示属性的值和它前面的标签 比如: detailsCalcul: Numero client:valueOfMyProperty 我想做这样的事情: [NomRapport("detailsCalcul")] public class MyClass { [NomChamp("Numero client")] public string NumeroClient { get; set; } } 我成功地获得了我的

我必须从几个类创建一个pdf报告,这些类将包含几个属性。 我需要显示属性的值和它前面的标签

比如:

detailsCalcul:
Numero client:valueOfMyProperty

我想做这样的事情:

[NomRapport("detailsCalcul")]
public class MyClass
{
    [NomChamp("Numero client")]
    public string NumeroClient { get; set; }
}
我成功地获得了我的两个属性的价值:

System.Reflection.MemberInfo[] proprietes = typeof(MyClass).GetMembers();
MyClass client = new MyClass();
client.NumeroClient = "1234";
        foreach (var p in proprietes)
        {
            var aa = p.GetCustomAttributes(true);
            for (int i = 0; i < aa.Length; i++)
            {
                var test = aa[i];
                if (test.GetType() == typeof(NomChampAttribute))
                { 
                  var nomChamp = ((NomChampAttribute)attributes[i]).ToString());
                }
            }
        }
System.Reflection.MemberInfo[]proprietes=typeof(MyClass.GetMembers();
MyClass客户端=新建MyClass();
client.NumeroClient=“1234”;
foreach(财产中的var p)
{
var aa=p.GetCustomAttributes(true);
for(int i=0;i
我想知道在我访问属性时是否可以访问我的财产的价值

谢谢你的帮助


纪尧姆

属性不知道应用它的上下文;您甚至无法访问属性,更不用说实例了。但是,如果您有PropertyInfo和实例,则:

object value = property.GetValue(instance, null);

您可以通过变量p访问该属性吗?你想做什么?此外,GetCustomAttributes还有一个重载,它采用了一种类型,您无需过滤自己。谢谢!这就是我想要的!