2017-07-28 6 views
1

のためのVisual Studioでの移行を可能にするために、どのように私は、Mac用のVisual Studioを持っていると私は、次のチュートリアル使っアズールとXamarinを学ぶためにしようとしている:いくつかの時点でhttps://adrianhall.github.io/develop-mobile-apps-with-csharp-and-azure/chapter3/server/は、Mac

を、私はEFの移行を有効にする必要があります。このチュートリアルでは次のように述べています。「表示」 - >「その他のWindows」 - >「パッケージマネージャーコンソール」と進みます。

残念ながら、Visual Studio for Macにはパッケージマネージャコンソールがありません... enable-migrationsadd-migration、またはupdate-databaseなどのMacでの処理方法を教えてください。

+1

Visual Studioの 'Package Manager Host'は、現在PowerShellベータ版を使用している' macOS'には対応していないので、 'EntityFramework.psm1'をインストールしようとすると' ConsoleHost'となり、 EntityFramework PSモジュールで 'Import-Module'を実行すると失敗します。移行cmdsは、エンティティフレームワークAPI上のかなり薄いラッパーであり、C#のcmdラインアプリケーションにそれらをかなり簡単に変換できますが、Mac上でWindows VMをスピンアップするのはかなり簡単です...今日利用可能な2つのオプション:https://stackoverflow.com/a/20382226/4984832 – SushiHangover

+0

これは単にパッケージマネージャホストをサポートするだけではありません。 PowerShellコンソールを追加する別のNuGet拡張機能があります。問題は、少なくともEF 6では、PowerShellコマンドがVisual Studio固有であることです。 SharpDevelopでEF 6のサポートを統合したところ、すべてのPowerShellコマンドをホストIDEと連携して書き直す必要がありました。 EF 7は、dotnet cliを使用してコマンドライン上で動作するクロスプラットフォームコマンドを提供しています。しかし、PowerShellの統合も別の問題です。 –

答えて

3

これは現在、Visual Studio for Macではサポートされていません。

PowerShellコンソールをVisual Studio for Macに追加するNuGet拡張機能がありますが、Entity FrameworkのPowerShellコマンドは通常、Visual Studio固有のものであるため動作しそうにありません。また、完全に実装されていないPowerShellのオープンソースクローンであるPashを使用するため、PowerShellのサポートは限られています。

Entity Framework 7(またはEntity Framework Coreを呼び出すもの)を使用している場合は、.NET Core command lineのコマンドを使用できるはずです。

dotnet ef migrations ... 

Entity Framework 6を​​使用している場合は、PowerShellを使用する代わりに、別の方法で移行を呼び出す必要があります。 Entity Framework 6には、Visual Studio固有のPowerShellコマンドがあります。彼らはSharpDevelopに移植されましたが、そのIDEで作業するためにそれらを書き直しました。

+0

https://meta.stackoverflow.com/questions/359302/merge-tags-visual-studio-mac-and-visual-studio-for-mac?noredirect=1#comment531840_359302 –