我正在循环一个字典类型并得到问题,不明白我做错了什么,在谷歌上做了很多搜索但是:(
//Tour class have dictionary property of type <int, string>
public Dictionary<int, string> listTourCategoriesNames { get; set; }
在前端我需要遍历该属性并填入ListOfActivities列表
public class TourActivitiesDB
{
public int ID { get; set; }
public string Name { get; set; }
}
this.ListOfActivities = new List<TourActivitiesDB>();
foreach (var item in tourDB.listTourCategoriesNames)
{
this.ListOfActivities.Add(new TourActivitiesDB {
ID = item.Key, //ERROR HERE
Name = item.Value //ERROR HERE
});
}
错误是:
'string'不包含'Key'的定义,也没有扩展方法'Key'可以找到'string'类型的第一个参数(你缺少using指令或汇编引用吗?)
和
'string'不包含'Value'的定义,也没有扩展方法'Value'接受类型'string'的第一个参数(你是否缺少using指令或汇编引用?)
我还在foreach循环中使用了KeyValuePair而不是var,但是遇到了同样的问题。感谢。
附上截图,您可以在此处使用我的字典中的正确类型来查看即时消息:
答案 0 :(得分:0)
我刚测试过,它似乎按照记录的方式工作
Dictionary<int, string> dic = new Dictionary<int, string> { { 1, "one" }, { 2, "two" } };
foreach (KeyValuePair<int, string> kvp in dic)
{
Debug.WriteLine($"{kvp.Key} {kvp.Value}");
}