这里是代码:如何使用.NET的属性获取构造函数参数名称?
我正在寻找一种方法来访问参数值的名称。
属性是这样的:
[AttributeUsage(AttributeTargets.Field)]
public class EDataAttrAttribute : Attribute {
public EDataAttrAttribute(int GroupID, int MinimumPermissionToEdit, bool ForcePersianLetter = false) {
this.GroupID = GroupID;
this.MinimumPermissionToEdit = MinimumPermissionToEdit;
}
public int GroupID { get; private set; }
public int MinimumPermissionToEdit { get; private set; }
}
public class EUser {
[EDataAttr(1, 1)]
public string FirstName;
}
var attr = typeof(T).GetField("FirstName").CustomAttributes.FirstOrDefault(a => a.AttributeType == typeof(EDataAttrAttribute));
int n = attr.ConstructorArguments.Count; // 2 !
int v = attr.NamedArguments.Count; // 0 !
如何获得MinimumPermissionToEdit值,而你不知道指数INT。
我知道它只是名为MinimumPermissionToEdit。
早晨丹尼尔:) – Jon 2013-04-10 09:46:00
@Jon:你好! :-)我希望你身边的一切都很好。 – 2013-04-10 09:47:43
这在我的属性中有三个属性时不返回数据。 – 2013-04-10 09:52:09