我重新安装了VS2012和Update 2.我创建了一个新的“ASP.NET动态数据实体Web应用程序”项目.然后我添加了一个“ADO.NET实体数据模型”,它是从现有的sqlServerExpress数据库生成的.
The type or namespace name ‘IObjectContextAdapter’ could not be found (are you missing a using directive or an assembly reference?)
这似乎是在System.Data.Entity.Infrastructure中声明的,但我无法在任何地方找到该程序集.我已经验证我已经为解决方案安装了EF5,因为我的packages.config显示:
@H_502_10@<?xml version="1.0" encoding="utf-8"?> <packages> <package id="EntityFramework" version="5.0.0" targetFramework="net45" /> </packages>RuntimeVersion: v4.0.30319
Version: 5.0.0.0
在web.config我有:
@H_502_10@<assemblies> <add assembly="System.Data.Entity,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089"/> </assemblies>这看起来不对,因为应该说5.0.0.0?然而,改变它没有任何影响.有人可以指点我正确的方向吗?
解决方法
得到这个编译结果非常简单.我需要补充一下:
@H_502_10@using System.Data.Entity.Infrastructure;
到Global.asax.cs.似乎T4模板不包含此默认值.