使用 .NET Web API (.NET 4, EF 4),我在调试时遇到了一些奇怪的错误,真的不知道发生了什么。
在DocumentRepository
我有这个构造函数中说:
public DocumentRepository(DocPortalContext db)
{
this._db = db;
}
如果我调试并将鼠标悬停_db
在弹出窗口中的项目上,我会遇到以下错误:
System.Data.Entity.Infrastructure.IObjectContextAdapter.ObjectContext = 'System.Data.Entity.DbContext' 不包含“System”的定义,也没有接受“System.Data.Entity”类型的第一个参数的扩展方法“System”。可以找到 DbContext'(您是否缺少 using 指令或程序集引用?)
和
System.Collections.Generic.ICollection>.IsReadOnly = 'System.Collections.Generic.Dictionary' 不包含 'System' 的定义,也没有接受 'System.Collections.Generic.Dictionary 类型的第一个参数的扩展方法 'System'
没有异常被捕获。
如果我在存储库方法中的这一行上放置一个断点return _db.Documents.AsQueryable();
- 并将鼠标悬停在Document
我得到以下错误:
System.Linq.IQueryable.Provider = 'System.Data.Entity.Infrastructure.DbQuery' 不包含 'System' 的定义并且没有扩展方法 'System' 接受类型为 'System.Data.Entity.Infrastructure' 的第一个参数。 DbQuery' 可能是...
一些帮助将不胜感激。
附加信息:
_db
以以下方式深入研究会在最后给出引用的消息:
base(System.Data.Entity.DbContext) -> Internal Context -> _appConfig -> 最后默认连接工厂旁边有以下错误“评估的函数需要所有线程运行。”
根据我的评论的更多信息:
这与问题并没有真正的关系,但它让我认为我的 .NET 或 VS 安装可能有问题 - 我对进行该调用的管道了解不足,也许你们中的一个人可以。无论如何,我可以浏览到我的 WebAPI 项目中的 URI 并在浏览器中返回 JSON。当我尝试在我的网站项目中使用 URI 时,我在浏览器中得到了这个:Could not find file 'C:\Program Files (x86)\IIS Express\System.Net.Http.StreamContent'.
这也被捕获为异常。