如何以编程方式分配.Net属性?

时间:2011-10-13 13:06:19

标签: c# .net reflection

  

可能重复:
  Can attributes be added dynamically in C#?

是否可以通过编程方式将.net属性分配给类/方法?

例如: 我可以使用从外部文件中获取的Guid / ProgId属性来装饰我的自定义.net com类吗?类似的东西:

typeof(MyComObject).AssignAttribute(new GuidAttribute("..."));

代替硬编码:

[Guid("...")]
class MyComObject
{
}

提前谢谢!

1 个答案:

答案 0 :(得分:1)

这取决于。 ICustomTypeDescriptor几乎允许你想要几乎任何类的所有部分(这可能根本就不存在),但是这个特定的接口可能不会被你试图提供对象的任何系统使用。不过,PropertyGrid广泛使用此界面。