将属性更新为对象,该对象是字典中的值

时间:2014-10-10 00:25:17

标签: c# visual-studio dictionary

我想将属性更新为字典中的对象。

Dictionary<string, MyObject> test = new Dictionary<string, MyObject>();
test.Add("first", new MyObject { myString = "test_1", myInt = 123 }

Class MyObject
{ 
    public string myString { get; set; }
    public int myInt {get; set;}
    public int myInt2 {get; set;}
}

让我们说MyObject有3个属性,一个字符串和两个整数。现在我搜索一个文本文件并找到第三个int值,如何用密钥将它添加到字典中?

我是以正确的方式来做这件事的吗?也许除了字典之外还有其他东西可供使用?

基本上我有一个键,我需要为它添加多个值。

请告诉我如何澄清。

1 个答案:

答案 0 :(得分:1)

考虑到MyObject看起来像:

public class MyObject
{
    public string StringProperty { get; set; }
    public int Int1 { get; set; }
    public int Int2 { get; set; }
}

您可以更新字典中对象的属性,如下所示:

Dictionary<string, MyObject> test = new Dictionary<string, MyObject>();
test.Add("first", new MyObject {StringProperty = "test_1", Int1 = 123});

test["first"].Int2 = 321;

关于你的方法。 如原始帖子所述,您不能在Dictionary对象中存储具有不同值的一个键。因此,您选择拥有数据对象(包含所有数据并在新数据出现时更新)是非常合法的。