如何使用c#属性?
我必须从几个类创建一个pdf报告,这些类将包含几个属性。 我需要显示属性的值和它前面的标签 比如: detailsCalcul:如何使用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; } } 我成功地获得了我的
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还有一个重载,它采用了一种类型,您无需过滤自己。谢谢!这就是我想要的!