2015-01-24 6 views
4

Я следую этому руководству: http://www.asp.net/vnext/overview/aspnet-vnext/create-a-web-api-with-mvc-6, чтобы настроить веб-api, и я не сделал это очень далеко. Как только я добавил строку: services.addMvc(); У меня есть исключение, говоря, что этот метод не найден. Я искал в Интернете и нашел отдельный вопрос/ответ здесь: http://forums.asp.net/t/2026087.aspx, но это не помогло.ASP.NET 5 на Visual Studio 2015 addMvc метод не найден

Моего startup.cs выглядит следующим образом:

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

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

     app.UseWelcomePage(); 
    } 

И мой 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" : { } 
} 
} 
+0

Вы уверены, что ссылка Microsoft.AspNet.Mvc успешно добавлена ​​в ваш проект. Также кажется, что вы используете последний CTP 5, но ссылаетесь на MVC beta1, поэтому я предлагаю попробовать использовать бета2. – dotnetstep

ответ

5

В основном, что вы используете некоторые некорректные пакеты. Попробуйте создать стандартное приложение для начинающих, которое поставляется вместе с VS (используйте последнюю версию VS 2015) и посмотрите, какие именно пакеты использовать.

Несколько комментариев на основе содержимого файла project.json:

  1. На данный момент, не следует смешивать различные версии бета-пакетов (например, бета1 и бета2). Это рецепт катастрофы :)
  2. Beta1 старый, пожалуйста, обновите
+0

Я пробовал на своем локальном конце с CTP5 и beta1 dll, и он работает с Виктором Хурдугачи. – dotnetstep

5

После того как я добавил «Microsoft.AspNet.Mvc»: «6.0.0-beta2» в project.json и сохранили подам зависимости автоматически не восстанавливались. Мне пришлось закрыть и снова открыть решение. После того, как я сделал это, пакеты были восстановлены, и ошибка исчезла. Я уверен, что есть более простой способ восстановить, но это то, что сработало для меня.

+0

Я думаю, вы можете принудительно восстановить пакет, щелкнув правой кнопкой мыши по проекту и нажав «Восстановить пакеты». –