【问题标题】:System.InvalidOperationException: Unable to resolve service for type 'Microsoft.Framework.Runtime.ILibraryManager'System.InvalidOperationException:无法解析类型“Microsoft.Framework.Runtime.ILibraryManager”的服务
【发布时间】:2015-12-01 23:31:13
【问题描述】:

我有以下 project.json 文件...

{
  "webroot": "wwwroot",
  "version": "1.0.0-*",

  "dependencies": {
    "EntityFramework.Commands": "7.0.0-beta5",
    "EntityFramework.SqlServer": "7.0.0-beta5",
    "Microsoft.AspNet.Authentication.MicrosoftAccount": "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.Server.IIS": "1.0.0-beta5",
    "Microsoft.AspNet.Server.WebListener": "1.0.0-beta5",
    "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"
  },

  "commands": {
    "web": "Microsoft.AspNet.Hosting --config hosting.ini",
    "ef": "EntityFramework.Commands",
    "gen": "Microsoft.Framework.CodeGeneration"
  },

  "frameworks": {
    "dnx451": {
      "frameworkAssemblies": {
        "System.Data": "4.0.0.0"
      }
    },
    "dnxcore50": { }
  },

  "publishExclude": [
    "node_modules",
    "bower_components",
    "**.xproj",
    "**.user",
    "**.vspscc"
  ],
  "exclude": [
    "wwwroot",
    "node_modules",
    "bower_components"
  ]
}

我现在正在尝试在命令行中做一些 MVC 6 控制器脚手架,但在执行命令之后:

dnx gen 控制器 -name ClassController --dataContext RegistrationDbContext --model 类

但是,我收到以下错误消息... 编辑:这是我安装 Microsoft.Framework.CodeGeneration 包后收到的消息(Install-Package Microsoft.Framework.CodeGeneration -Pre

System.InvalidOperationException: Unable to resolve service for type 'Microsoft.Framework.Runtime.ILibraryManager' while attempting to activate 'Microsoft.Framework.CodeGeneration.DefaultCodeGeneratorAssemblyProvider'.
   at Microsoft.Framework.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
   at Microsoft.Framework.DependencyInjection.ActivatorUtilities.CreateInstance(IServiceProvider provider, Type instanceType, Object[] parameters)
   at Microsoft.Framework.DependencyInjection.ActivatorUtilities.CreateInstance[T](IServiceProviderprovider, Object[] parameters)
   at Microsoft.Framework.CodeGeneration.ServiceProvider.AddServiceWithDependencies[TService,TImplementation]()
   at Microsoft.Framework.CodeGeneration.Program.AddCodeGenerationServices(ServiceProvider serviceProvider)
   at Microsoft.Framework.CodeGeneration.Program..ctor(IServiceProvider serviceProvider)

有什么建议吗?我该如何解决?

无论如何,这也是我的 global.json..

{
  "projects": [ "src", "test" ],
  "sdk": {
    "version": "1.0.0-beta5",
    "runtime": "clr",
    "architecture": "x64"
  }
}

谢谢!

【问题讨论】:

  • 我建议先将您的应用程序移至 rc1。在 beta-5 之后已经有 4 个版本,因此您不太可能会得到您的问题的答案(而且,如果它是一个错误,它可能已经被修复)。
  • 如何将我的整个应用移动到 rc1?似乎默认情况下一切都试图设置为 beta5。另外,我在 json 文件中设置的所有依赖项在 rc1 中是否可用?谢谢!编辑。似乎我的 VS 2015 有一个关于 Microsoft ASP.NET 5 RC1 Update 1 的更新。也许这可以让我转到 rc1?
  • 首先,更新工具 - 每个运行时版本都有一个新的工具版本。如果为 beta-5 创建了新项目,则意味着您拥有古老的工具。然后更新对 1.0.0-rc1-final 的引用。您现在可以从get.asp.net 获取最新信息
  • 知道了!这就是我刚才所怀疑的!我编辑了我之前的评论,而你添加了这个:) 谢谢!

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


【解决方案1】:

在 rc1-final 中,命名空间发生了变化:

来自:Microsoft.Framework.CodeGeneration

收件人:Microsoft.Extensions.CodeGeneration

project.json

  "dependencies": {
    ...
    "Microsoft.Extensions.CodeGenerators.Mvc": "1.0.0-rc1-final",
 }

  "commands": {
    ...
    "gen": "Microsoft.Extensions.CodeGeneration"
  }

要自定义 MVC6 脚手架模板,您可以在以下文件夹中找到它们:C:\Users\{user}\.dnx\packages\Microsoft.Extensions.CodeGenerators.Mvc\1.0.0-rc1-final \模板

使用 dnx gen controller --help 获得一些参数帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-25
    • 2022-09-24
    • 1970-01-01
    相关资源
    最近更新 更多