首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ASP.Net 5:将1.0 Beta8更新为RC1 - IServiceCollection不包含AddMvc的定义

ASP.Net 5:将1.0 Beta8更新为RC1 - IServiceCollection不包含AddMvc的定义
EN

Stack Overflow用户
提问于 2016-01-07 01:51:30
回答 1查看 3.3K关注 0票数 0

我在一个解决方案中有一些由授权应用程序接口项目、公共项目和ASP.net主应用程序项目组成的代码。我已经浏览了相关的project.json文件,删除了显式的beta8引用,然后进行了一些其他必要的更正。例如,在必要时将使用Microsoft.Framework.Configuration更改为Microsoft.Extensions.Configuration。

我从链接的潜在副本中了解到,首先要怀疑的是我的各种project.json文件中的无效引用混合。我没有显式地在任何地方留下beta8引用。因此,我不认为相关的问题是相同的。

我被困在哪里似乎是一件非常基本的事情:

代码语言:javascript
复制
Error   CS1061  Build   'IServiceCollection' does not contain a
definition for 'AddMvc' and no extension method 'AddMvc' accepting a first 
argument of type 'IServiceCollection' could be found (are you missing a 
using directive or an assembly reference?)  

我在project.json中引用了Microsoft.AspNet.Mvc,无论我是否在.cs文件中添加了"using Microsoft.AspNet.mvc“,错误是否仍然存在都无关紧要。我以为你在新的世界秩序中添加了引用,只需将它们添加到project.json中。如果project.json中存在程序集引用,为什么仍会出现此错误?

我的project.json:

代码语言:javascript
复制
{
  "webroot": "wwwroot",
  "version": "1.0.0-*",

  "dependencies": {

    "Microsoft.AspNet.Authentication.JwtBearer": "1.0.0-*",
    "Microsoft.AspNet.IISPlatformHandler": "1.0.0-*",
    "Microsoft.AspNet.Mvc": "6.0.0-*",
    "Microsoft.AspNet.Server.Kestrel": "1.0.0-*",
    "Microsoft.AspNet.StaticFiles": "1.0.0-*",
    "Microsoft.Framework.Logging": "1.0.0-*",
    "Microsoft.Framework.Logging.Console": "1.0.0-*",
    "Microsoft.Framework.Logging.Debug": "1.0.0-*",
    "System.IdentityModel.Tokens": "5.0.0-*",
    "MyCompany.Common": "1.0.0-*"
  },

  "commands": {
    "web": "Microsoft.AspNet.Server.Kestrel"
  },

  "frameworks": {
    "dnx451": { }
  },

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

中断的代码行是AddMvc代码行:

代码语言:javascript
复制
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNet.Builder;
using Microsoft.AspNet.Hosting;
using Microsoft.Framework.DependencyInjection;
using Microsoft.Framework.Logging;
using Microsoft.Extensions.Configuration;
using Microsoft.Dnx.Runtime;
using RamSoft.Authorization.Api.Common;
using System.IdentityModel.Tokens;
using Microsoft.AspNet.Authentication.JwtBearer;
using RamSoft.ITConsole.Common;
using Microsoft.Extensions.PlatformAbstractions;
namespace MyCompany.Authorization.Api
{
    public class Startup
    {
     ...
 public void ConfigureServices(IServiceCollection services)
        {
            services.AddInstance(_signingCredentials);
            services.AddInstance(_jwtBearerOptions);

            services.AddMvc();  // Fail.

        }
   ...
}
EN

回答 1

Stack Overflow用户

发布于 2016-06-22 15:02:47

您需要更改项目上的依赖项。这是我的project.json

代码语言:javascript
复制
"dependencies": {
    "Microsoft.AspNetCore.Authentication.Cookies": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Diagnostics": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Mvc": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Razor.Tools": {
      "version": "1.0.0-preview1-final",
      "type": "build"
    },
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.StaticFiles": "1.0.0-rc2-final",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-rc2-final",
    "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0-rc2-final",
    "Microsoft.Extensions.Configuration.Json": "1.0.0-rc2-final",
    "Microsoft.Extensions.Configuration.UserSecrets": "1.0.0-rc2-final",
    "Microsoft.Extensions.Logging": "1.0.0-rc2-final",
    "Microsoft.Extensions.Logging.Console": "1.0.0-rc2-final",
    "Microsoft.Extensions.Logging.Debug": "1.0.0-rc2-final",
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-rc2-final",
    "Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
      "version": "1.0.0-preview1-final",
      "type": "build"
    },
    "Microsoft.VisualStudio.Web.CodeGenerators.Mvc": {
      "version": "1.0.0-preview1-final",
      "type": "build"
    }
  }

在startup.cs中添加using Microsoft.Extensions.Configuration;

我们至少可以在Core1.0 rc2上使用AddMvc()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34639522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档