我一直在尝试创建一个具有键值对属性的类,我尝试过Dictionary关键字,但我需要这样的东西:
ClassName clsName = new ClassName();
clsName.PropertyName.Add["Key"] = value;
我希望它是动态属性,所以我可以发送任何数据类型。
答案 0 :(得分:3)
如果你在基础课之后,关键和价值,
KeyValuePair<string, object>
为你工作?
答案 1 :(得分:3)
我建议你简单地使用“HASHTABLE”,这对你来说更容易.Below是语法。
Hashtable hashtable = new Hashtable();
hashtable.Add("Area", 1000);
hashtable.Add("Perimeter", 55);
第一个参数代表键,第二个代表值。所以它是键值对。
答案 2 :(得分:1)
我不确定我是否正确理解了这个问题,但显然您可以使用generic Dictionary来满足您的要求,其中键类型参数为string
且值类型参数为{{1你可以使用object
。
答案 3 :(得分:0)
如果我们假设你的keyvaluepair有一个字符串键和一个int值,那么你可以尝试这个:
clsName.PropertyName = new KeyValuePair<string, int>("keyName", 2);
您无需使用任何Add
方法。实际上,当你有一个你想要添加一个项目的集合时,后者会产生。从您发布的问题中我们不能说这是您的情况。
答案 4 :(得分:0)
public class ClassName
{
public KeyValuePair<string, object> PropertyName {get; set; }
}
var c = new ClassName();
c.PropertyName = new KeyValuePair<string, object>("keyName", someValue);
或者,如果您需要存储多个值,请使用Dictionary<string, object>
作为您的媒体资源类型。
public class ClassName
{
public ClassName()
{
this.PropertyName = new Dictionary<string, object>();
}
public Dictionary<string, object> PropertyName {get; set; }
}
var c = new ClassName();
c.PropertyName.Add("stringKey", anyValue);