Pakketbeheer console inschakelen-migraties commandoNotfoundexception alleen in een specifiek vs-project

Ik heb geprobeerd de opdracht ‘Inschakelen-migraties’ in een nieuw project uit te voeren en ik kreeg het bericht:

PM> Enable-Migrations
The term 'Enable-Migrations' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verif
y that the path is correct and try again.
At line:1 char:18
+ Enable-Migrations <<<< 
    + CategoryInfo          : ObjectNotFound: (Enable-Migrations:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Maar in alle andere projecten loopt de opdracht prima.

Waarom gebeurt dit?

BTW, ik gebruik VS2010 Professional SP1

EDIT: Ik heb opnieuw geïnstalleerd met de Commmand: Install-pakket entityframework -inclubPrerelease
en het probleem ging weg.


Antwoord 1, Autoriteit 100%

Ik heb opnieuw geïnstalleerd met de Commmand: Install-Package EntityFramework -IncludePrereleaseen het probleem ging weg.


Antwoord 2, Autoriteit 90%

Gewoon eenvoudig opnieuw starten van visuele studio werkte voor mij.
Niet nodig om pakketten, enz.

te installeren


Antwoord 3, Autoriteit 34%

Dit probleem is bedoeld omdat we geen entiteitskader hebben geïnstalleerd.
Installeer entiteitsraamwerk met behulp van de onderstaande opdracht.

Install-Package EntityFramework -IncludePrerelease

Nadat u eenmaal hebt geïnstalleerd, kiest u het project in het standaardproject van Package MANGER-console Standaardproject.

Zorg ervoor dat ten minste één klasse in uw project erft van gegevenscontext, anders gebruik dan de onderstaande klasse:

public class MyDbContext : DbContext
    {
        public MyDbContext()
        {
        }
    }

Als we dit niet doen, krijgen we nog een fout:

No context type was found in the assembly

Na het voltooien van deze dingen kunt u

uitvoeren

enable-migrations

Antwoord 4, Autoriteit 27%

Ik had hetzelfde probleem met vs 2019 preview, .NET kern en entityframework kern.

Blijkt dat ik moest installeren via Nuget Microsoft.EntityFrameworkCore.Toolsen Microsoft.EntityFrameworkCore.Design. Eenmaal dat is gedaan, werkte het als een charme.


Antwoord 5, Autoriteit 18%

Visuele studio opnieuw opstarten met beheerder Privilege opgelost het probleem voor mij.


Antwoord 6, Autoriteit 16%

Zorg ervoor dat u Visual Studio gebruikt als beheerder.


Antwoord 7, Autoriteit 10%

EERSTE “INSTALLATE-PAKKET EntityFramework -inclubPrerelease” en vervolgens Visual Studio opnieuw opstarten als een -beheerder werkte samen voor mij.


Antwoord 8, Autoriteit 5%

Ik had hetzelfde probleem en ik probeerde het grootste deel van de oplossing die door andere mensen wordt geleverd, maar het werkte voor mij met onderstaande stappen. Ik heb vs 2017.

Stappen:

Install-Package EntityFramework -IncludePrerelease

Maak vervolgens een klasse als

public class MyDBContext : DbContext { public MyDBContext() { } }

en bij het laatst uitvoeren

Enable-Migrations -EnableAutomaticMigrations

Wat niet voor mij werkte:

: herstarten van vs.

: Alleen opdracht “Enable-Migrations”, die zonder -enableautomaticmigraties is.

: Herstellen of bijwerken van Nuget Package Manager.

Mijn originele fout in het begin was

/ *
De term ‘inschakeling-migratie’ wordt niet erkend als de naam van een CMDLet, functie, scriptbestand of werkbaar programma. Controleer de spelling van de naam, of als een pad was opgenomen,
Controleer of het pad correct is en het opnieuw probeert.at regel: 1 CHAR: 1
+ Enable-migratie
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo: ObjectNotFound: (enable-migration:String) [], CommandNotFoundException
*/


Antwoord 9, autoriteit 4%

Ik had net hetzelfde probleem in asp.net coreVS2019

Hiermee is het opgelost:

Install-Package Microsoft.EntityFrameworkCoreInstall-Package
Install-Package Microsoft.EntityFrameworkCore.Tools

Vergeet niet om het standaardproject in de Package Manager Console in te stellen op uw databaseproject voor het geval dit anders is.

Tijdens het uitvoeren van de migraties lijkt het standaardproject ook een rol te spelen. In een latere stap hielp het om dit te installeren in mijn belangrijkste opstartproject (niet het EF-databaseproject):

Install-Package Microsoft.EntityFrameworkCore.Design

Antwoord 10, autoriteit 3%

In Visual Studio 2012 had ik dezelfde fout. Moest NuGet verwijderen (Tools > Extensies en Updates > Geïnstalleerd > All: NuGet Package Manager: knop Verwijderen). Daarna Visual Studio gesloten. Daarna Visual Studio opnieuw geopend en NuGet opnieuw geïnstalleerd (Extensies en updates > Online > Visual Studio Gallery: NuGet Package Manager: Download-knop). Vervolgens in de volgende vensters: klik op de knop Installeren en vervolgens op de knop Sluiten. Sluit vervolgens Visual Studio en open het opnieuw.


Antwoord 11, autoriteit 2%

Wat dit symptoom voor mij heeft opgelost (VS2013), is het verwijderen en opnieuw installeren van het EF-pakket met Nuget. Het verschil in het csproj-bestand heeft dit veranderd…

<Reference Include="EntityFramework">
  <HintPath>..\packages\EntityFramework.6.1.1\lib\net45\EntityFramework.dll</HintPath>
</Reference>

…in deze…

<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>..\packages\EntityFramework.6.1.1\lib\net45\EntityFramework.dll</HintPath>
</Reference>

Ik begrijp nog niet helemaal waarom, maar het werkte in ieder geval.


Antwoord 12, autoriteit 2%

In .NET Core kon ik dezelfde oplossing bereiken als beschreven in het geaccepteerde antwoord, door het volgende in te voeren in de pakketbeheerconsole:

Install-Package EntityFramework.Core -Pre

Antwoord 13, autoriteit 2%

Enable-Migrations -EnableAutomaticMigrations


Antwoord 14, autoriteit 2%

uitvoeren als beheerder vs =>> Open het project

-> On the Package manager Console
Enable-migration
add-migration migrationName
update-database

Antwoord 15

Ik had hetzelfde probleem en ik ontdekte dat dit komt door enkele tekens in het projectpad, zoals [ of ]
Ik corrigeer het projectpad en het werkte prima!


Antwoord 16

Omdat ik al een map met migraties had, heb ik Visual Studio opnieuw opgestart en uitgevoerd
Update-Database -uitgebreid
in de pakketbeheerconsole. Dat werkte voor mij


Antwoord 17

Ik heb alle bovenstaande suggesties geprobeerd, maar niets werkte voor mij. Toen heb ik Nuget Package Managergeüpdatet en het werkte..


Antwoord 18

  1. Installeer het Entity-framework in het huidige project met behulp van de onderstaande opdracht:
    PB> Installatiepakket EntityFramework -IncludePrerelease

  2. Voeg een klasse “MyDBContext” toe aan de map Model zoals hieronder aangegeven:

    openbare klasse MyDBContext: DbContext
    {
    openbare MijnDBContext()
    {
    }
    }

  3. Schakel nu migraties in voor het huidige project met het onderstaande commando:
    PB> migraties inschakelen


Antwoord 19

Probeer in VS 2013 de UPDATE 1(RC1) te installeren en het probleem is opgelost.


Antwoord 20

Ik had meerdere projecten in de oplossing, maar ik had de juiste standaardprojectset, dus ik dacht dat het zou moeten werken.

Uiteindelijk moest ik de optie -StartupProject MyProjectNametoevoegen aan de opdracht


Antwoord 21

Geen van deze oplossingen werkte voor mij. Mijn oplossing was om packages/EntityFramework.6.1.3te verwijderen en Restore NuGet Packages

Ik merkte op dat packages/EntityFramework.6.1.3/tools/EntityFramework.psd1ontbrak, dus dit was een waarschijnlijke oorzaak. Hoe het in de eerste plaats is verwijderd, hoewel ik geen idee heb.


Antwoord 22

Controleer of de configuratiesectie “entityFramework” bestaat en wordt beschreven in uw .config-bestand

<configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/></configSections>
        <entityFramework>
            <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework"/>
            <providers>
                <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
            </providers>
        </entityFramework>

Antwoord 23

Controleer de versie van het Entity Framework.

als het 6.3 is, downgrade het dan naar 6.2 en het zou prima moeten werken


Antwoord 24

als u een MVC-webproject aanmaakt U moet Verificatie selecteren bij het maken van het project. standaard is niet geselecteerd.


Antwoord 25

downgraden naar 6.2 heeft me geholpen.
.NET Framework versie 4.6.1
Project in oud formaat (niet .NET Standard)
Visual Studio moet open zijn met beheerdersrechten voor de eerste migratie.
Ik denk dat EF met versie boven 6.2 het nieuwste .NET Framework nodig heeft.


Antwoord 26

Controleer of het project geopend is in het Solution Explorer-venster.

Dit kan de oorzaak van uw probleem zijn.

Other episodes