2016-07-05 2 views
1

Я пытаюсь создать ядро ​​.net-приложение, имеющее соединение с базой данных sqlite..net core 1.0.0 с каркасом ядра sqlite

Я .net ядро ​​SDK 1.0 установлены и добавлены следующие NuGet-пакеты для моего проекта:

  • Microsoft.EntityFrameworkCore.Sqlite
  • Microsoft.EntityFrameworkCore.Sqlite.Design

Я использую следующий файл project.json:

{ 
    "version": "1.0.0-*", 
    "buildOptions": { 
    "emitEntryPoint": true 
    }, 

    "dependencies": { 
    "Microsoft.EntityFrameworkCore.Sqlite": "1.0.0", 
    "Microsoft.EntityFrameworkCore.Sqlite.Design": "1.0.0", 
    "Microsoft.NETCore.App": { 
     "type": "platform", 
     "version": "1.0.0" 
    }, 
    }, 

    "tools": { 
    "Microsoft.EntityFrameworkCore.Tools": 
     { 
     "version": "1.0.0-final", 
     "imports": [ 
     "portable-net45+win8+dnxcore50", 
     "portable-net45+win8" 
     ] 
    } 
    }, 

    "frameworks": { 
    "netcoreapp1.0": { 
     "imports": "dnxcore50" 
    } 
    } 
} 

Тогда я побежал следующую команду:

dotnet restore 

Теперь я хочу, чтобы проверить, если инструмент эф был успешно установлен, чтобы создать миграцию. Но когда я бег:

dotnet ef --help 

я получаю следующий результат:

The specified framework 'Microsoft.NETCore.App', version '1.0.0-rc2-3002702' was not found. 
    - Check application dependencies and target a framework version installed at: 
     C:\Program Files\dotnet\shared\Microsoft.NETCore.App 
    - The following versions are installed: 
     1.0.0 
    - Alternatively, install the framework version '1.0.0-rc2-3002702'. 

Можно ли installe предвыпускного 2 вместе с версией 1.0, и я действительно должен сделать это, чтобы получить структуру лица запускать с .net core 1.0?

+0

Вы должны обновить оба, чтобы добраться до статуса RTM. Вы не можете не соответствовать версиям. Убедитесь, что ваш файл Global.json имеет соответствующий «sdk»: { – mvermef

ответ

0

Я узнал, как это сделать. Изменения основаны на https://docs.efproject.net/en/latest/miscellaneous/rc2-rtm-upgrade.html.

  1. Изменение версии инструментов 1.0.0-preview2 финала
  2. Удалить импорт в разделе рамок
  3. Добавить зависимость в Microsoft.EntityFrameworkCore.Design

Вот полный project.json:

{ 
    "version": "1.0.0-*", 
    "buildOptions": { 
    "emitEntryPoint": true 
    }, 

    "dependencies": { 
    "Microsoft.EntityFrameworkCore.Design": "1.0.0-preview2-final", 
    "Microsoft.EntityFrameworkCore.Sqlite": "1.0.0", 
    "Microsoft.EntityFrameworkCore.Sqlite.Design": "1.0.0", 
    "Microsoft.NETCore.App": { 
     "type": "platform", 
     "version": "1.0.0" 
    } 
    }, 

    "tools": { 
    "Microsoft.EntityFrameworkCore.Tools": 
     { 
     "version": "1.0.0-preview2-final", 
     "imports": [ 
     "portable-net45+win8+dnxcore50", 
     "portable-net45+win8" 
     ] 
    } 
    }, 

    "frameworks": { 
    "netcoreapp1.0": { 
    } 
    } 
} 

и для полноты этого является global.json:

{ 
    "sdk": { 
    "version": "1.0.0-preview2-003121" 
    } 
} 
1

Вы должны обновить оба, чтобы добраться до RTM. Вы не можете не соответствовать версиям. Убедитесь, что у вашего файла Global.json есть "sdk":{ "version" : "1.0.0-preview2-003121" }.

+0

Спасибо за вашу помощь. Версия global.json имеет правильную версию. Но как я могу обновить инфраструктуру сущности до RTM? По словам Нугета, у меня уже есть последняя версия. Или мне просто нужно использовать более новую версию средств инфраструктуры сущностей? –

Смежные вопросы