2016-09-08 66 views
2

將所有project.json文件升級到.NET core的新格式後,我無法運行實體框架6遷移的'dotnet ef'。任何人都可以看到下面的project.json有什麼問題嗎?升級到.NET Core 1.0項目文件後,無法在EF6上運行'dotnet ef'

之前我project.json是這樣的:

{ 
    "frameworks": { 
    "dnx46": { 
     "dependencies": { 
     } 
    } 
    }, 
    "dependencies": { 
    "EntityFramework": "6.1.3", 
    "EntityFramework.DynamicFilters": "1.4.8-*", 
    "Migrator.EF6": "1.1.0", 
    .... 
    }, 
    "commands": { 
    "ef": "Migrator.EF6" 
    } 
} 

現在看起來是這樣的:

{ 
     ... 
     "frameworks": { 
     "net46": { 
      "dependencies": { 
      } 
     } 
     }, 
     "dependencies": { 
     "EntityFramework": "6.1.3", 
     "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.0", 
     "EntityFramework.DynamicFilters": "1.4.8-*", 
     "Migrator.EF6": "1.2.0", 
     "Migrator.EF6.Tools": { 
      "version": "1.0.3", 
      "target": "package", 
      "type": "build" 
     }, 
     ... 
     }, 
     "tools": { 
     "Migrator.EF6.Tools": { 
      "version": "1.0.3", 
      "imports": "portable-net45+win8+dnxcore50" 
     } 
     } 
    } 

這是錯誤消息當我運行 'DOTNET EF' 我目前有:

未處理的異常: Microsoft.DotNet.Cli.Utils.CommandUnknownException:無可執行文件 找到匹配命令「dotnet-ef」

回答

3

您必須將其添加到您的project.json文件中。

"buildOptions": { 
    "emitEntryPoint": true 
} 

另外,如果你沒有一個主類中添加一個空的Main類是這樣的:

public class Program 
{ 

    public static void Main(string[] args) 
    { 

    } 
} 
+1

偉大的建議!在添加之後,它抱怨沒有主程序存在。所以在添加一個空的Main類後它就起作用了。非常感謝。 –

+0

熱烈歡迎您:) – Sampath

+0

請將您的問題作爲一個新問題@ZainAlabdinTawfiq然後你會有更好的反饋。 – Sampath

相關問題