C#动态属性参数
问题描述:
答
对于运行时,我认为你可能正在看ICustomTypeDescriptor。如果它是一个编译时决定的,你也可以使用编译器指令:
#define ISBROWSABLE
#if ISBROWSABLE
[your attribute]
#endif
答
你可以通过类和属性名,例如加载使用类似的方法一些配置文件或数据库值 How to set dynamic value in my Attribute
[IsBrowsable(“类名”,“PROPERTYNAME”)]
然而这将是恼人的键入作为字符串名称,即是显而易见的,不管怎样应该能够从反射来确定。 你可以试试我们的IL Weaver工具,比如PostSharp或者Fody(我相信他们能够做这样的想法,但是刚才没有例子)☑
你想在编译时做出决定时间还是运行时间? – 2009-07-07 16:54:28
如果可能,运行时 – SwDevMan81 2009-07-07 17:07:25