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