我正在尝试创建一个使用Database First Entity Framework的ASP.NET MVC站点。
我正在 Visual Studio Professional 2013 Update 3 中创建一个新的MVC 5站点,然后添加一个 ADO.NET实体数据模型,我从中选择数据库中的EF Designer 。
之后,我创建一个连接字符串,选择表来生成框架,一切都很好。
但是当我编译它时,我收到此错误
'MyModel.GlobalConfiguration'不包含。的定义 '配置'
这是 Global.asax.cs ,此处有错误
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
使用GlobalConfiguration
添加的实体框架自动生成 MyModel
。它当然没有配置方法。
public partial class GlobalConfiguration
{
public int ID { get; set; }
public long CurrentUSN { get; set; }
public string DBVersion { get; set; }
public long CurrentFile { get; set; }
}
我在这里跟踪了所有答案GlobalConfiguration.Configure() not present after Web API 2 and .NET 4.5.1 migration但没有效果。这是一个略有不同的情况,因为这不是升级,而是一个干净的项目。
所有Extensions和NuGet包都是最新的。我甚至删除了生成的实体并重新安装了所有NuGet包,看看是否有帮助,但没有运气。
有什么建议吗?
答案 0 :(得分:23)
Package Manager Console
。Install-Package Microsoft.AspNet.WebApi.WebHost
并按Enter键。答案 1 :(得分:4)
看起来与生成的代码存在某种命名空间冲突。我对这种变化感到非常厌倦,但到目前为止一切都有效。
显然GlobalConfiguration
是指MyModel.GlobalConfiguration
。
然而,它确实在寻找System.Web.Http.GlobalConfiguration
我换了这个,一切正常。多么麻烦
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
System.Web.Http.GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
答案 2 :(得分:1)
1 - 确保团队资源管理器中的文件,如果执行checkin;
2 - 检查"包中的旧文件"关于dll WebAPI,例如文件夹" Microsoft.AspNet.WebApi.WebHost.5.2.3"文件夹,如果有明确的话;
3 - 将所有内容保持干净后安装项目;
祝你好运!!!!!