当前位置:编程学习 > C#/ASP.NET >>

“实体类”可不可以动态添加“字段”和“属性”

“实体类”可不可以动态添加“字段”和“属性”???

比如一个实体类,如下:

public class EnergyTargetModel
    {


        public string EnergyYear
        {
            get;
            set;
        }

        public string EnergySum
        {
            get;
            set;
        }

        public string EnergyUnitArea
        {
            get;
            set;
        }

        public string EnergyEveryOne
        {
            get;
            set;
        }


    }

功能:

      现在要根据参数“Sum”,给“EnergyTargetModel”类添加几个属性。

      1、如果“Sum”为“1”,那么“EnergyTargetModel”类不变。

      2、如果“Sum”为“2”,那么为“EnergyTargetModel”类添加属性“EnergyYear1、EnergySum1、EnergyUnitArea1、EnergyEveryOne1”。

      3、如果“Sum”为“3”,那么为“EnergyTargetModel”类添加属性“EnergyYear1、EnergySum1、EnergyUnitArea1、EnergyEveryOne1、EnergyYear2、EnergySum2、EnergyUnitArea2、EnergyEveryOne2、”。

      4、以此类推,动态为“EnergyTargetModel”类添加属性,并且确保动态修改后的类可以被实例化为List<EnergyTargetModel>实体集合。


您是不是感觉这样的需求很怪异。。。   应该怎样做呢???    最好有实例可以参考。。。  感激不尽。。。 --------------------编程问答-------------------- 通过定义实体集之间的关系可以实现吗??? --------------------编程问答-------------------- --------------------编程问答-------------------- 给类加属性还是给类对象加属性?


--------------------编程问答-------------------- 参阅 System.Reflection.Emit 命名空间

难度相当大,楼主,挽尊。 --------------------编程问答-------------------- 请问怎么给类对象添加属性?
引用 3 楼  的回复:
给类加属性还是给类对象加属性?
--------------------编程问答-------------------- 额,类都编译好了还能添加吗? --------------------编程问答--------------------
引用 5 楼  的回复:
请问怎么给类对象添加属性?

引用 3 楼 的回复:

给类加属性还是给类对象加属性?

你先告诉我,你添加了属性别人怎么用?反射吗?
在设计时调用者根本不知道你有这个属性,C#毕竟不是动态语言。 --------------------编程问答--------------------
引用 7 楼  的回复:
引用 5 楼  的回复:
请问怎么给类对象添加属性?

引用 3 楼 的回复:

给类加属性还是给类对象加属性?

你先告诉我,你添加了属性别人怎么用?反射吗?
在设计时调用者根本不知道你有这个属性,C#毕竟不是动态语言。


所以我才问:给类加属性还是给类对象加属性?


--------------------编程问答-------------------- 做几个 具有有所属性的EnergyTargetModel 类 然后继承 隐藏不要的属性  --------------------编程问答--------------------
引用 8 楼  的回复:
引用 7 楼  的回复:

引用 5 楼  的回复:
请问怎么给类对象添加属性?

引用 3 楼 的回复:

给类加属性还是给类对象加属性?

你先告诉我,你添加了属性别人怎么用?反射吗?
在设计时调用者根本不知道你有这个属性,C#毕竟不是动态语言。


所以我才问:给类加属性还是给类对象加属性?


给“类的对象”添加属性。。。 --------------------编程问答-------------------- 不知道DLR可不可以做这样子的需求~~~~ --------------------编程问答-------------------- 我们曾经有一个需求最后是用的依赖属性解决的,不过解决了之后带了其它设计上的问题,一直再考虑换方式去解决.
如果楼主真的有兴趣的话可以自己实现一个依赖属性的整个结构,因为C#自身的依赖属性是有局限的,毕竟设计的出发点不一样. --------------------编程问答-------------------- 用entity framework   添加字段设置为可以为空。。随便你添加,不用修改任何代码。如果手写3层,添加字段要累死人呢。
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,