Sto cercando di creare un'applicazione .net core che abbia una connessione con un database SQLite.
Ho installato .net core sdk 1.0 e ho aggiunto i seguenti pacchetti Nuget al mio progetto:
Sto usando il seguente file 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"
}
}
}
Quindi ho eseguito il seguente comando:
dotnet restore
Ora voglio controllare se lo strumento ef è stato installato con successo per creare una migrazione. Ma quando corro:
dotnet ef --help
Ottengo il seguente risultato:
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'.
È possibile installare il candidato 2 insieme alla versione 1.0 e devo davvero farlo per ottenere il framework di entità che esegue runner con .net core 1.0?
Ho scoperto come fare questo. Le modifiche sono basate su https://docs.efproject.net/en/latest/miscellaneous/rc2-rtm-upgrade.html .
Ecco il project.json completo:
{
"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": {
}
}
}
e per completezza questo è il global.json:
{
"sdk": {
"version": "1.0.0-preview2-003121"
}
}
devi aggiornare entrambi per arrivare a RTM. Non è possibile abbinare le versioni. Verifica che il tuo file Global.json abbia l'appropriato "sdk":{ "version" : "1.0.0-preview2-003121" }
è presente.