首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >TypeDescriptor.AddAttributes和属性

TypeDescriptor.AddAttributes和属性
EN

Stack Overflow用户
提问于 2012-02-21 18:39:10
回答 1查看 1.5K关注 0票数 1

这样的事情有可能发生吗?

有一个具有DataContract属性的类。这个类有两个属性,一个是int,另一个是string。这个类有两个不同的实例。

是否可以仅将DataMember属性动态分配给第一个实例的int属性和第二个实例的string属性?如果是这样的话,您介意提供一个代码片段吗?

EN

回答 1

Stack Overflow用户

发布于 2012-02-21 18:41:46

不,你不能在运行时分配属性,除非用动态类生成做相当复杂的魔术。

好吧,我不理解TypeDescriptor:)所以,通常你需要创建自己的ICustomTypeDescriptor并实现GetProperties方法来返回PropertyDescriptor (following constructor)的扩展属性数组。

代码语言:javascript
复制
static Attribute[] AddAttribute(Attribute[] attributes, Attribute attr) {
    Array.Resize(ref attributes, attributes.Length + 1);
    attributes[attributes.Length - 1] = new attr;
    return attributes;
}

public MyPropertyDescriptor(MemberDescriptor propDef)
       : base(propDef, AddAttribute(propDef.Attributes, new DataMembeAttribute()))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9376066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档