use*_*844 3 c# linq dictionary
从数据表中我获取值并放入Dictionary<string,string>:
Dictionary<string, string> mydic= new Dictionary<string, string>();
Run Code Online (Sandbox Code Playgroud)
我的数据表是ex
Value RowOrder
page1 01
page2 00
page3 00
Run Code Online (Sandbox Code Playgroud)
我正在使用LINQ获取RowOrder根据给定的值并将其放入mydic:
string id = (from DataRow dr in table3.Rows where (string)dr["Value"] == formula
select (string)dr["RowOrder"]).FirstOrDefault();
mydic.Add(id,Value);
Run Code Online (Sandbox Code Playgroud)
如果我运行此错误,则显示错误:
"已经添加了具有相同键的项目."
如何克服这一点.我想page1,page2,page3应该用数值增加01,00,00分别
在添加之前,您需要检查字典是否已有密钥:
if(!mydic.ContainsKey(id))
{
mydic.Add(id, Value);
}
Run Code Online (Sandbox Code Playgroud)
如果您希望使用不同的数据结构需要考虑重复的id值,则字典不能包含具有相同键的两个项目.
也许是List<Tuple<string, string>>?