Visual Studio 2015上的ASP.NET 5找不到addMvc方法

soc*_*man 4 c# asp.net asp.net-mvc asp.net-core-mvc asp.net-core

我正在关注本教程:http://www.asp.net/vnext/overview/aspnet-vnext/create-a-web-api-with-mvc-6来设置web api,我还没有把它做得很远.一旦我添加了这一行:services.addMvc();我得到一个例外,说找不到这个方法.我在网上搜索并在这里找到了一个单独的问题/答案:http://forums.asp.net/t/2026087.aspx但这没有帮助.

我的startup.cs看起来像这样:

public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();
    }

    public void Configure(IApplicationBuilder app)
    {
        app.UseMvc();

        app.UseWelcomePage();
    }
Run Code Online (Sandbox Code Playgroud)

而我的project.json:

{
"webroot": "wwwroot",
"version": "1.0.0-*",
"exclude": [
    "wwwroot"
],
"packExclude": [
    "node_modules",
    "bower_components",
    "**.kproj",
    "**.user",
    "**.vspscc"
],
"dependencies": {
    "Microsoft.AspNet.Server.IIS": "1.0.0-beta2",
    "Microsoft.AspNet.Diagnostics": "1.0.0-beta1",
    "Microsoft.AspNet.Mvc": "6.0.0-beta1"
},
"frameworks" : {
    "aspnet50" : { },
    "aspnetcore50" : { }
}
}
Run Code Online (Sandbox Code Playgroud)

Vic*_*aci 5

大多数情况下你肯定使用了一些不正确的包.尝试创建VS附带的默认启动器应用程序(使用最新的VS 2015)并查看要使用的确切包.

基于project.json文件内容的一些注释:

  1. 目前,不要混用不同版本的测试版软件包(如beta1和beta2).这是灾难的秘诀:)
  2. Beta1已经过时了,请升级


Jos*_*h C 5

在我将"Microsoft.AspNet.Mvc":"6.0.0-beta2"添加到project.json并保存文件后,我的依赖项没有自动恢复.我不得不关闭并重新打开解决方案.我这样做后,包恢复,错误消失了.我确信有一种更简单的方法可以恢复,但这对我有用.