c# - Where did Attribute.IsDefined go in DNX Core 5.0? -


i'm trying check if property has attribute. used done with:

attribute.isdefined(propertyinfo, typeof(attributeclass)); 

however warning it's not available in dnx core 5.0 (it still in dnx 4.5.1).

has not been implemented yet or has moved other type/reflection related stuff?

i'm using beta7.

edit:
there seems isdefined extension method in system.reflection.extensions package. usage:

var defined = propertyinfo.isdefined(typeof(attributeclass)); 

you need include system.reflection namespace. reference source code can found here. beside memberinfo, works on assembly, module , parameterinfo too.

this possibly faster using getcustomattribute.


original post:

looks it's not ported .net core yet. in mean while can use getcustomattribute determine whether attribute set on property:

bool defined = propertyinfo.getcustomattribute(typeof(attributeclass)) != null; 

you bake extension method:

public static class memberinfoextensions {     public static bool isattributedefined<tattribute>(this memberinfo memberinfo)     {         return memberinfo.isattributedefined(typeof(tattribute));     }      public static bool isattributedefined(this memberinfo memberinfo, type attributetype)     {         return memberinfo.getcustomattribute(attributetype) != null;     } } 

and use this:

bool defined = propertyinfo.isattributedefined<attributeclass>(); 

Comments

Popular posts from this blog

html - Outlook 2010 Anchor (url/address/link) -

javascript - Why does running this loop 9 times take 100x longer than running it 8 times? -

Getting gateway time-out Rails app with Nginx + Puma running on Digital Ocean -