GetCustomAttributes does not return value

ado.net, c#, reflection

Solution

typo: should be `typeof(FieldAttribute)`. There is an unrelated system enum called `FieldAttributes` (in `System.Reflection`, which you have in your `using` directives, since `PropertyInfo` resolves correctly).

Also, this is easier usage (assuming the attribute doesn't allow duplicates):

var field = (FieldAttribute) Attribute.GetCustomAttribute(
          property, typeof (FieldAttribute), false);
if(field != null) {
    Console.WriteLine(field.Field);
}

Problem

I have defined a custom attribute ``` [AttributeUsage(AttributeTargets.Property )] public class FieldAttribute: Attribute { public FieldAttribute(string field) { this.field = field; } private string field; public string Field { get { return field; } } } ``` My Class which uses the custom attribute is as below ``` [Serializable()] public class DocumentMaster : DomainBase { [Field("DOC_CODE")] public string DocumentCode { get; set; } [Field("DOC_NAME")] public string DocumentName { get; set; } [Field("REMARKS")] public string Remarks { get; set; } } } ``` But when i try to get the value of the custom attribute it returns null object ``` Type typeOfT = typeof(T); T obj = Activator.CreateInstance<T>(); PropertyInfo[] propInfo = typeOfT.GetProperties(); foreach (PropertyInfo property in propInfo) { object[] colName = roperty.GetCustomAttributes(typeof(FieldAttributes), false); /// colName has no values. } ``` What am I missing?

Original source