C# 自定义类并在需要时动态更改它

C# 自定义类并在需要时动态更改它,c#,.net,visual-studio,class,C#,.net,Visual Studio,Class,我有一个简单的类,定义如下: public class SomeDataObject { public int LabelId { get; set; } public string LabelDesc { get; set; } public double FirstValue { get; set; } } 当我选择添加属性时,是否可以向类添加属性 例如: public double SecondValue { get

我有一个简单的类,定义如下:

public class SomeDataObject
{
    public int LabelId { get; set; }        
    public string LabelDesc { get; set; }               
    public double FirstValue { get; set; } 
}
当我选择添加属性时,是否可以向类添加属性

例如:

public double SecondValue { get; set; } 

如果您的
SomeDataObject
派生自
expandooobject
,则无需创建属性即可扩展该对象

因此:

public class SomeDataObject : ExpandoObject { }
。。。这是有效的:

SomeDataObject s = new SomeDataObject();
s.SecondValue = 123d;
如果在编译时不知道名称,可以将其设置为字典(实际上是):


请查看
ExpandoObject
。。。“表示一个对象,其成员可以在运行时动态添加和删除”作为替代方案,您可以添加一个字段
public ExpandoObject Extra{get;set;}
,以便有一个定义良好的基础,但如果需要,还可以进行扩展。@ron:需要更多帮助吗?
d["SecondValue"] = 123d;