我有以下错误消息:
'System.Collections.Generic.Dictionary<int,SpoofClass>' does not
contain a definition for 'biff' and no extension method 'biff'
accepting a first argument of type
'System.Collections.Generic.Dictionary<int,SpoofClass>' could be found
(are you missing a using directive or an assembly reference?)
我检查了SO,我发现this问题似乎与我有类似(如果不相同)的问题。但是,我尝试了接受的答案中提供的解决方案,但仍然没有提出任何建议。它表现得像我错过了一个使用声明,但我几乎是积极的,我有我需要的所有使用。
以下是产生错误的一些代码:
using locationOfSpoofClass;
...
Dictionary<int, SpoofClass> cart = new Dictionary<int, SpoofClass>();
foreach (var item in dbContext.DBView)
{
cart.biff = item.biff;
...
}
SpoofClass文件:
namespace locationOfSpoofClass
{
public class SpoofClass
{
public int biff { get; set; }
...
}
}
很抱歉,如果我重命名变量等等,那会令人困惑。如果它不可读或难以理解,或者其他信息与解决方案相关,请告诉我。谢谢!
答案 0 :(得分:5)
问题出在这一部分:cart.biff
。 cart
类型为Dictionary<int, SpoofClass>
,不属于SpoofClass
类型。
我只能猜测你要做什么,但是下面的代码编译:
Dictionary<int, SpoofClass> cart = new Dictionary<int, SpoofClass>();
int i=0;
foreach (var item in dbContext.DBView)
{
cart.Add(i, new SpoofClass { biff = item.biff });
++i;
}
答案 1 :(得分:3)
您需要访问给定键的字典值。这些方面的东西。
foreach(var item in dbContext.DBView)
{
foreach(var key in cart.Keys)
{
cart[key].biff = item.biff;
}
}