asp.net 5 (vnext) сборка IConfiguration отсутствует

Я пытаюсь запустить asp.Net 5 mvc под моно. Для первых шагов я пытаюсь запустить шаблон приложения из yo. Мои шаги:

yo aspnet ‹- выберите WebApplication с именем MyWeb

cd MyWeb

kpm restore --source https://www.myget.org/F/aspnetvnext/api/v2/ ‹- выполнено без ошибок

kpm build

после этой команды я получил следующие ошибки:

это мой проект.json:

Используемые версии: компилятор Mono JIT версии 3.12.0 (архив от 7 февраля 19:13:43 UTC 2015) KRE: 1.0.0-beta4-11166

{
    /* Click to learn more about project.json  http://go.microsoft.com/fwlink/?LinkID=517074 */
    "webroot": "wwwroot",
    "version": "1.0.0-*",
    "dependencies": {
        "EntityFramework.SqlServer": "7.0.0-beta3",
        "EntityFramework.Commands": "7.0.0-beta3",
        "Microsoft.AspNet.Mvc": "6.0.0-beta3",
        /* "Microsoft.AspNet.Mvc.WebApiCompatShim": "6.0.0-beta3", */
        "Microsoft.AspNet.Diagnostics": "1.0.0-beta3",
        "Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta3",
        "Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta3",
        "Microsoft.AspNet.Security.Cookies": "1.0.0-beta3",
        "Microsoft.AspNet.Server.IIS": "1.0.0-beta3",
        "Microsoft.AspNet.Server.WebListener": "1.0.0-beta3",
        "Microsoft.AspNet.StaticFiles": "1.0.0-beta3",
        "Microsoft.Framework.ConfigurationModel.Json": "1.0.0-beta3",
        "Microsoft.Framework.CodeGenerators.Mvc": "1.0.0-beta3",
        "Microsoft.Framework.Logging": "1.0.0-beta3",
        "Microsoft.Framework.Logging.Console": "1.0.0-beta3",
        "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta3",
        /* Modifications for Mono Support*/
        "EntityFramework.InMemory": "7.0.0-beta3",
        "Kestrel": "1.0.0-beta3"
    },
    "commands": {
        /* Change the port number when you are self hosting this application */
        "web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5001",
        "kestrel": "Microsoft.AspNet.Hosting --server Kestrel --server.urls http://localhost:5004",
        "gen": "Microsoft.Framework.CodeGeneration",
        "ef": "EntityFramework.Commands"
    },
    "frameworks": {
        "aspnet50": {},
        "aspnetcore50": {}
    },
    "exclude": [
        "wwwroot",
        "node_modules",
        "bower_components"
    ],
    "bundleExclude": [
        "node_modules",
        "bower_components",
        "**.kproj",
        "**.user",
        "**.vspscc"
    ],
    "scripts": {
        "postrestore": ["npm install"],
        "prepare": ["grunt bower:install"]
    }
}

Похоже, что-то не так с Microsoft.Framework.ConfigurationModel, но не хватает идей, как это исправить. Я надеюсь, что кто-то может дать мне подсказку, чтобы указать мне в правильном направлении!

Большое спасибо за чтение! С уважением Алекс

Не уверен в этом, но в моем VisualStudio адрес MyGet "https://www.myget.org/F/aspnetvnext/". Попробуйте использовать восстановление kpm с ним.


person Alex    schedule 02.03.2015    source источник


Ответы (1)


Кроме того, были получены те же ошибки после обновления VS CTP5-> CTP6, восстановление пакетов из beta2-> beta3 помогло, поэтому, похоже, это неправильные ошибки версии пакета.

Добавлено: если вы получите ошибку миграции, замените эти значения:

я пробовал это с myget.org/F/aspnetvnext, но все равно выдавал ту же ошибку. Если я рискую зависимости в project.json от beta2, я получаю эту ошибку «home/dev/WORKSPACE/MyWeb/MyWeb/Migrations/000000000000000_CreateIdentitySchema.cs(4,40): ошибка CS0234: имя типа или пространства имен «Миграции» не соответствует существуют в пространстве имен «Microsoft.Data.Entity.Relational» (вам не хватает ссылки на сборку?) ............`

/*
using Microsoft.Data.Entity.Migrations; 
using Microsoft.Data.Entity.Migrations.Builders; 
using Microsoft.Data.Entity.Migrations.Infrastructure;
*/

using Microsoft.Data.Entity.Relational.Migrations; 
using Microsoft.Data.Entity.Relational.Migrations.Builders; 
using Microsoft.Data.Entity.Relational.Migrations.Infrastructure; 
person user1981102    schedule 02.03.2015
comment
Я исправил это при переходе с бета-версии 2 на бета-версию 3 во всех своих пакетах. - person Alex; 02.03.2015
comment
Ах, такого рода ошибки будут исправлены довольно просто. Они изменяют структуру библиотеки, поэтому вам нужно изменить /*using Microsoft.Data.Entity.Migrations; с помощью Microsoft.Data.Entity.Migrations.Builders; используя Microsoft.Data.Entity.Migrations.Infrastructure;*/ -› используя Microsoft.Data.Entity.Relational.Migrations; с помощью Microsoft.Data.Entity.Relational.Migrations.Builders; с использованием Microsoft.Data.Entity.Relational.Migrations.Infrastructure; Просто используйте IDE, которая покажет возможные исправления, такие как VS. - person Josh C; 03.03.2015
comment
Спасибо всем за ваши ответы, у меня все еще есть проблемы .. я случайно выбрал для своего проекта.json -* вместо -beta2 или 3, чтобы получить новейшие пакеты, и после этого я все еще получаю сообщение об ошибке конфигурации, упомянутой в моем вопросе. _1_ но у меня есть ссылки на Microsoft.Framework.ConfigurationModel в моем проекте.json. понятия не имею, что я делаю неправильно. - person user1981102; 03.03.2015
comment
Кажется, у вас все еще есть неправильные библиотеки. Просто сделайте то, что вы делали раньше - установите все библиотеки на бета-версию 2 и измените использование, как я уже отвечал раньше. - person Alex; 06.03.2015
comment
/home/dev/WORKSPACE/MyWeb/MyWeb/Startup.cs(29,16): ошибка CS0246: не удалось найти имя типа или пространства имен «IConfiguration» (вы пропустили директиву using или ссылку на сборку?) /home /dev/WORKSPACE/MyWeb/MyWeb/Startup.cs(32,39): ошибка CS0246: не удалось найти тип или имя пространства имен «IServiceCollection» (вам не хватает директивы using или ссылки на сборку?) /home/dev /WORKSPACE/MyWeb/MyWeb/Startup.cs(59,56): ошибка CS0246: не удалось найти имя типа или пространства имен «IHostingEnvironment» (вы пропустили директиву using или ссылку на сборку?) /home/dev/WORKSPACE /MyWeb/MyWeb/Startup.cs(59,81): ошибка CS0246: Не удалось найти имя типа или пространства имен «ILoggerFactory» (вы пропустили директиву using или ссылку на сборку?) /home/dev/WORKSPACE/MyWeb /MyWeb/Startup.cs(21,24): ошибка CS0246: Не удалось найти тип или имя пространства имен «IHostingEnvironment» (вам не хватает директивы using или ссылки на сборку?) /home/dev/WORKSPACE/MyWeb/ MyWeb/Models/IdentityModels.cs(21,37): ошибка CS0246: не удалось найти имя типа или пространства имен «IHostingEnvironment» (вы пропустили директиву using или ссылку на сборку?) /home/dev/WORKSPACE/MyWeb/ MyWeb/Startup.cs(24,29): ошибка CS0012: тип IConfigurationSourceContainer определен в сборке, на которую нет ссылок. Вы должны добавить ссылку на сборку «Microsoft.Framework.ConfigurationModel.IConfigurationSourceContainer, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null». /home/dev/WORKSPACE/MyWeb/MyWeb/Startup.cs(40,17): ошибка CS0012: тип IServiceCollection определен в сборке, на которую нет ссылок. Вы должны добавить ссылку на сборку «Microsoft.Framework.DependencyInjection.IServiceCollection, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null». /home/dev/WORKSPACE/MyWeb/MyWeb/Startup.cs(46,13): ошибка CS0012: тип IServiceCollection определен в сборке, на которую нет ссылок. Вы должны добавить ссылку на сборку «Microsoft.Framework.DependencyInjection.IServiceCollection, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null». /home/dev/WORKSPACE/MyWeb/MyWeb/Startup.cs(50,13): ошибка CS0012: тип IServiceCollection определен в сборке, на которую нет ссылок. Вы должны добавить ссылку на сборку «Microsoft.Framework.DependencyInjection.IServiceCollection, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null». /home/dev/WORKSPACE/MyWeb/MyWeb/Startup.cs(63,13): ошибка CS0012: тип ILoggerFactory определен в сборке, на которую нет ссылок. Вы должны добавить ссылку на сборку «Microsoft.Framework.Logging.ILoggerFactory, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null». - person user1981102; 06.03.2015