【问题标题】:Error running application using EF 7 after adding dependencies and updating model classes添加依赖项和更新模型类后使用 EF 7 运行应用程序时出错
【发布时间】:2015-08-06 00:52:57
【问题描述】:

我正在运行 MVC 6 和 EF 7 并更改了我的模型并希望运行该应用程序,但是我收到一个错误并且不清楚根本原因是什么。

下面是我的 project.json 中的一个 sn-p

"dependencies": {
"EntityFramework.Commands": "7.0.0-beta5",
"EntityFramework.SqlServer": "7.0.0-beta5",
"Microsoft.AspNet.Antiforgery": "1.0.0-beta6",
"Microsoft.AspNet.Authentication.Cookies": "1.0.0-beta5",
"Microsoft.AspNet.Authentication.Facebook": "1.0.0-beta5",
"Microsoft.AspNet.Authentication.Google": "1.0.0-beta5",
"Microsoft.AspNet.Authentication.MicrosoftAccount": "1.0.0-beta5",
"Microsoft.AspNet.Authentication.Twitter": "1.0.0-beta5",
"Microsoft.AspNet.Diagnostics": "1.0.0-beta5",
"Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta5",
"Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta5",
"Microsoft.AspNet.Mvc": "6.0.0-beta5",
"Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta5",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta5",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta5",
"Microsoft.AspNet.Session": "1.0.0-beta6",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta5",
"Microsoft.AspNet.Tooling.Razor": "1.0.0-beta5",
"Microsoft.Framework.Configuration.Abstractions": "1.0.0-beta5",
"Microsoft.Framework.Configuration.Json": "1.0.0-beta5",
"Microsoft.Framework.Configuration.UserSecrets": "1.0.0-beta5",
"Microsoft.Framework.Logging": "1.0.0-beta5",
"Microsoft.Framework.Logging.Console": "1.0.0-beta5",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta5"
},

以下是网页错误。

System.MissingMethodException 找不到方法:'布尔 Microsoft.Framework.DependencyInjection.ServiceCollectionExtensions.TryAdd(Microsoft.Framework.DependencyInjection.IServiceCollection,Microsoft.Framework.DependencyInjection.ServiceDescriptor)。 在 Microsoft.Framework.DependencyInjection.LoggingServiceCollectionExtensions.AddLogging(IServiceCollection 服务) 在 Microsoft.AspNet.Hosting.WebHostBuilder.BuildHostingServices() 在 Microsoft.AspNet.Hosting.WebHostBuilder.Build() 在 Microsoft.AspNet.Loader.IIS.RuntimeHttpApplication.ApplicationStart(IHttpApplication 应用程序) 在 Microsoft.AspNet.Loader.IIS.HttpApplicationBase.InvokeApplicationStart(IHttpApplication 应用程序)

【问题讨论】:

    标签: asp.net-core-mvc entity-framework-core


    【解决方案1】:

    从一个测试版到另一个测试版发生了很多重大变化。

    因此,我建议您将 project.json 中的所有版本都调整为 beta5 或 beta6。

    【讨论】:

    • 我同意这一点,但我不能使用 nuget 或直接编辑 project.json 来选择 beta 5 进行防伪,你能告诉我让它们全部成为 beta 5 的最佳方法吗或测试版 6。
    • AntiForgery was added in beta6。考虑到我认为最好将所有内容更新到 beta6。现在我更新我的包只是在project.json 中搜索和替换,VS 会处理剩下的。
    • 是的,但是如果我升级到 6,Visual Studio 生成的身份验证类将不同步,所以可能需要在生成具有身份验证的项目之前在本地更新它们?
    • 哦,我明白了。我忘记了这个选项。对于其他阅读者:ASP.NET 5 将在接下来的几个月内发生很大变化,因此仍然可能进行一些重大更改。要始终保持速度,请参阅 ASP.NET 5 roadmap 并订阅 announcements 存储库。
    猜你喜欢
    • 2016-07-16
    • 2012-11-01
    • 1970-01-01
    • 2020-09-11
    • 2020-12-12
    • 2019-02-14
    • 2019-08-07
    • 2018-10-09
    • 1970-01-01
    相关资源
    最近更新 更多