我创建了一个包含几个项目的类。并从中创建一个字典对象值。 当我在调试模式下查看它时,添加到字典中的项目似乎工作正常。 然而,当我尝试检索对象时,我只获得字典中的最后一个对象。但我可以检索所有的钥匙。 我在这里错过了一些简单的步骤吗?
public class Block
{
public int blockID16 { get; set; }
public int blockID {get; set;}
public string blockName {get; set;}
public int instance {get;set;}
}
// init object and dictionary
Block block = new Block();
Dictionary<int, Block> blockDict = new Dictionary<int, Block>();
// read an xml file and write to the dictionary
blockDict.Add(block.blockID16, block);
// I then return the dictionary from a called method below and read it.
Dictionary<int, Block> blockDict = new Dictionary<int, Block>();
blockDict = XMLreader.Reader();
Block block1 = new Block();
foreach(KeyValuePair<int, Block> entry in blockDict)
{
block1.blockID16 = entry.Value.blockID16;
block1.blockName=entry.Value.blockName;
block1.instance = entry.Value.instance;
block1.blockID = entry.Value.blockID;
keyValue = entry.Key;
}
答案 0 :(得分:0)
是的克里斯,我确实一遍又一遍地使用这个对象而没有重新实现它。谢谢,我还在学习,并且只编程了几周,并将对象引用与变量值混淆。现在工作正常。这只是一个测试,帮助我在移动到更大的项目之前,如何将对象添加到字典中。谢谢大家。