use*_*380 2 c# dictionary exception sortedlist
当我尝试添加项目时,我有一个应用程序挂起,当我检查跟踪文件时,我收到了这些条目
for (int i=0; i<objects.Count; i++)
{
DataModelObject dmo = (DataModelObject)objects.GetAt(i);
sl.Add(dmo.Guid, dmo);
}
}
Run Code Online (Sandbox Code Playgroud)
我不知道如何解决这个问题,任何机构都有任何建议
问题是在排序列表中,每个键都必须是唯一的.所以你需要检查你没有插入两次相同的密钥(guid值).代码如下所示:
for (int i=0; i<objects.Count; i++)
{
DataModelObject dmo = (DataModelObject)objects.GetAt(i);
if (!sl.ContainsKey(dmo.Guid))
{
sl.Add(dmo.Guid, dmo);
}
}
Run Code Online (Sandbox Code Playgroud)
这将确保每个密钥都是唯一的.但是,如果您希望每个键有多个值,则需要使用不同类型的集合.
| 归档时间: |
|
| 查看次数: |
36937 次 |
| 最近记录: |