दिलचस्प पोस्ट
क्या ब्राउज़र की चौड़ाई पर आधारित पाठ आकार गतिशील रूप से संभव है? बहुआयामी सरणी सिकुड़ने वाली कुंजी को चिपकाएं सी में स्थानीय चर त्रुटि का फ़ंक्शन वापस आ गया है संप्रभु और असली दुनिया उदाहरण contravariance ओपन सोर्स कैड ड्राइंग (dwg) लाइब्रेरी में सी # अल्पविराम-पृथक तारों को संग्रह / सरणी / सूची बनाने के लिए सबसे अधिक परिष्कृत तरीका? एक SQL सर्वर VARCHAR / NVARCHAR स्ट्रिंग में एक लाइन ब्रेक कैसे सम्मिलित करें टाइपस्क्रिप्ट में स्ट्रिंग मानों के साथ एक एन्यूम बनाएं एचबीज़ केर्बरोस कनेक्शन नवीकरण रणनीति फायरबसे से स्विफ्ट 2 छवियां पुनर्प्राप्त करना एकाधिक कॉलम से समूह और अन्य कई कॉलम जोड़ दें Angularjs ng- मॉडल ng-if के अंदर काम नहीं करता है कोड का उपयोग करने के लिए ImageView का मार्जिन कैसे सेट करें, xml नहीं सूचना इरादे से डेटा निकालें जावा क्लाइंट में सर्वर के स्व-हस्ताक्षरित एसएसएल प्रमाण पत्र स्वीकार करें

कोई एक्जीक्यूटेबल मेलिंग कमांड "dotnet-ef" नहीं मिला

मैं Microsoft.EntityFramework.Core और SQLite के साथ ASP.Net कोर RC2 का उपयोग करके एक प्रोजेक्ट नमूना कर रहा हूं I

मैंने इस ट्यूटोरियल का पालन किया है: https://damienbod.com/2015/08/30/asp-net-5-with-sqlite-and-entity-framework-7/

लेकिन, जब मैं यह कमांड चलाऊँगा:

 dotnet ef migrations add FirstMigration 

मुझे यह त्रुटि मिली:

 No executable found matching command "dotnet-ef" 

यहां मेरा project.json कॉन्फ़िगरेशन:

 { "dependencies": { "Microsoft.NETCore.App": { "version": "1.0.0-rc2-3002702", "type": "platform" }, "Microsoft.AspNetCore.Mvc": "1.0.0-rc2-final", "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0-rc2-final", "Microsoft.AspNetCore.Server.Kestrel": "1.0.0-rc2-final", "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-rc2-final", "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0-rc2-final", "Microsoft.Extensions.Configuration.Json": "1.0.0-rc2-final", "Microsoft.Extensions.Logging": "1.0.0-rc2-final", "Microsoft.Extensions.Logging.Console": "1.0.0-rc2-final", "Microsoft.Extensions.Logging.Debug": "1.0.0-rc2-final", "Microsoft.EntityFrameworkCore": "1.0.0-rc2-final", "Microsoft.EntityFrameworkCore.Sqlite": "1.0.0-rc2-final" }, "tools": { "Microsoft.AspNetCore.Server.IISIntegration.Tools": { "version": "1.0.0-preview1-final", "imports": "portable-net45+win8+dnxcore50" } }, "frameworks": { "netcoreapp1.0": { "imports": [ "dotnet5.6", "dnxcore50", "portable-net45+win8" ] } }, "buildOptions": { "emitEntryPoint": true, "preserveCompilationContext": true }, "runtimeOptions": { "gcServer": true }, "publishOptions": { "include": [ "wwwroot", "Views", "appsettings.json", "web.config" ] }, "scripts": { "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ] } } 

वेब के समाधान से एकत्रित समाधान "कोई एक्जीक्यूटेबल मेलिंग कमांड "dotnet-ef" नहीं मिला"

इकाई फ़्रेमवर्क कोर 1.0

आपको इसमें शामिल करने के लिए अपनी प्रोजेक्ट। जेएसओन फाइल के tools अनुभाग को अपडेट करना होगा।

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

इसे dotnet ef कमानों को उपलब्ध करना चाहिए।

जरूरी

मुझे यहां यह भी ध्यान देना चाहिए कि dotnet ef आज्ञा केवल उसी निर्देशिका से चलते समय उपलब्ध होगी, जिसमें प्रोजेक्ट। Json फ़ाइल शामिल है।

इकाई फ़्रेमवर्क कोर 1.1
यदि आपको इकाई फ़्रेमवर्क कोर 1.1 में अपग्रेड करने के बाद इस समस्या को फिर से आ रहा है, तो Microsoft.EntityFrameworkCore.Tools निर्भरता को Microsoft.EntityFrameworkCore.Tools.DotNet संस्करण 1.1.0-preview4 साथ प्रतिस्थापित करना सुनिश्चित करें। imports खंड को रखने की कोई जरूरत नहीं है, या तो इस पर अधिक जानकारी के लिए, एंटीटी फ़्रेमवर्क कोर 1.1 रिलीज घोषणा ब्लॉग पोस्ट के अंतर्गत "1.1 के लिए उन्नयन" शीर्षक देखें।

इकाई फ़्रेमवर्क कोर 1.1

यदि आप VS2017 का उपयोग कर रहे हैं, तो इस पर इसे जोड़ना। Project.json फ़ाइल के बिना नए .csproj परियोजनाएं

आपको .csproj फ़ाइल को संपादित करने की आवश्यकता है (सही समाधान एक्सप्लोरर पर क्लिक करें और संपादित करें whatever.csproj पर क्लिक करें) और फिर इसमें पेस्ट करें

 <ItemGroup> <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet"> <Version>1.0.0-*</Version> </DotNetCliToolReference> </ItemGroup> 

के सौजन्य: https://github.com/aspnet/EntityFramework/issues/7358#issuecomment-278379967

.NET कोर 1.0 से। NET कोर 1.1+ या 2.x पर स्विच करते समय यह एक सामान्य समस्या है।

उसे ठीक करने के लिए, आपको यह चाहिए:

  • Microsoft.EntityFrameworkCore.Tools और Microsoft.EntityFrameworkCore.Tools.DotNet पैकेज लायब्रेरी NuGet का उपयोग कर प्राप्त करें
  • मैन्युअल रूप से अपने project.json अंदर इस पैकेज के संदर्भ को जोड़ें। जेसन (.NET कोर 1.0 के लिए) या <projectName>.csproj (.NET कोर 1.1+ और 2.x) के लिए परियोजना कॉन्फ़िगरेशन फ़ाइल।

अधिक विशेष रूप से, .NET Core 1.0 प्रोजेक्ट्स के लिए, यह जोड़ें:

 "tools": { "Microsoft.EntityFrameworkCore.Tools": "1.0.0" "Microsoft.EntityFrameworkCore.Tools.DotNet": "1.0.0" } 

.NET कोर 1.1+ और .NET कोर 2.x प्रोजेक्ट्स के लिए, यह जोड़ें:

 <ItemGroup> <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.0.0" /> <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" /> </ItemGroup> 

यदि आपके पास पहले से ही एक tools JSON कुंजी या एक या अधिक मौजूदा DotNetCliToolReference तत्वों के साथ एक <ItemGroup> तत्व है, तो बस मौजूदा समूह में नए जोड़ें

महत्वपूर्ण : उपरोक्त चरणों को निष्पादित करने के अलावा, आपको प्रोजेक्ट रूट फ़ोल्डर (प्रोजेक्ट फ़ाइल वाला एक) के भीतर dotnet ef कमांड को लॉन्च करना होगा, अन्यथा यह काम नहीं करेगा

अतिरिक्त जानकारी और इस मुद्दे की एक व्यापक व्याख्या के लिए आप यह पोस्ट भी पढ़ सकते हैं

मुझे माइक्रोसॉफ्ट को जोड़ना पड़ा। एंटीटीफ़्रेमवर्ककोर। टूल्स काम करने के लिए डॉटनेट आपकी प्रोजेक्ट। जेएसओन फ़ाइल का उपकरण खंड इस तरह दिखेगा:

 "tools": { "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.1.0-preview4-final", "Microsoft.AspNetCore.Razor.Tools": "1.1.0-preview4-final", "Microsoft.EntityFrameworkCore.Tools":"1.1.0-preview4-final", "Microsoft.EntityFrameworkCore.Tools.DotNet": "1.1.0-preview4-final" }, 

वीएस2017 15.3 या उससे अधिक और एएसपी.नेट कोर 2.0 या इसके बाद के संस्करण के लिए विशिष्ट …

कमांड लाइन या nuget पैकेज प्रबंधक के माध्यम से डीबी प्रदाता के लिए नूगेट स्थापित करें

 dotnet add package Microsoft.EntityFrameworkCore.SqlServer 

निम्न अनुभाग को .csproj में जोड़ें

 <ItemGroup> <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" /> </ItemGroup> 

वीएस2017 में कमांडलाइन या न्यूज प्रबंधक के माध्यम से डिज़ाइन टाइम टूल इंस्टॉल करें

 dotnet add package Microsoft.EntityFrameworkCore.Design 

यह परियोजना निर्देशिका में कमांड लाइन पर डॉटनेट ef * सक्षम करता है

प्रोजेक्ट डायरेक्टरी में कमांड लाइन पर डॉटनेट ef * कमांड सक्षम करता है,

 dotnet ef mgirations add Initial dotnet ef database update Initial dotnet ef dbcontext scaffold 

का आनंद लें…

यदि आप इस समस्या को पूरा करते हैं और सीएलआई टूल के साथ asp.net कोर को चलाते हैं, तो आप इसे <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" /> जोड़कर इसे हल कर सकते हैं, और dotnet restore उसके बाद आप dotnet ef कमान का उपयोग कर सकते हैं।

मैं एक अलग कक्षा पुस्तकालय परियोजना का उपयोग कर रहा था पैकेज प्रबंधक कंसोल में उपर्युक्त सभी को विफल करने और विफल करने के बाद। मैंने कमांड प्रॉम्प्ट का इस्तेमाल किया, और यह काम किया! अजीब। हालांकि, क्रेडिट इस लेख को जाता है और अगर आप अलग कक्षा पुस्तकालय परियोजना का उपयोग कर रहे हैं, यह आपका समाधान है।

दृश्य स्टूडियो 2017 के अंतर्गत मुझे इन कमांड को पैकेज प्रबंधक कंसोल से चलाने की जरूरत थी

 install-package Microsoft.EntityFrameworkCore.SqlServer.Design Scaffold-DbContext "Server=.\sqlexpress;Database=MyDb;Trusted_Connection=True;MultipleActiveResultSets=true" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Model -Context "MyApp" 

वीएस पैकेज प्रबंधक कंसोल प्रकार में एक अलग कंसोल विंडो को खोलने के बजाय और निम्न कमांड चलाएं:

प्रवासन जोड़ें

Add-Migration <migration name>

अंतिम माइग्रेशन निकालें

Remove-Migration

प्रवासन लागू करने से पहले (या, माइग्रेशन लागू करने के लिए):

Update-Database

जब माइग्रेशन लागू किया गया है:

Update-Database -Migration <previous migration> -Context <db context name>

HTH

संपादित करें : आपको अपने एमवीसी कोर प्रोजेक्ट में निम्नलिखित क्लास की भी आवश्यकता हो सकती है:

 public class DbContextFactory : IDesignTimeDbContextFactory<NotesContext> { public YourDbContext CreateDbContext(string[] args) { var builder = new DbContextOptionsBuilder<YourDbContext>(); builder.UseSqlServer("DefaultConnection", optionsBuilder => optionsBuilder.MigrationsAssembly(typeof(YourDbContext).GetTypeInfo().Assembly.GetName().Name)); return new YourDbContext(builder.Options); } }