类中的C#属性,未定义类型

Ale*_*lin 0 c#

我想在C#中创建一些类(让我们说它类属性)

public class Attribute
{
    public int ID { get; set; }
    public string Name { get; set; }
    public string Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

此类的实体将具有ID,Name和Value属性.

主要问题是我想在属性中保存Value不同类型的数据:String,int,double,DateTime等.

制作这样的解决方案的最佳方法是什么?

Flo*_*ger 6

您正在寻找通用类型?

public class Attribute<T>
{
    public int ID {get; set;}
    public string Name { get; set; }
    public T Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

编辑:

public void SomeMethod()
{
    var attribute = new Attribute<int>(){ ID = 1, Name = "TheName", Value = 46 };
}
Run Code Online (Sandbox Code Playgroud)

  • 这将无法工作 - 这是一个不可见的请求,因为最后数据库也不支持这一点. (2认同)