Visual Studio for Mac を触り始めましたが、Windows版との互換性が気になりました。ちょっと実験してみます。(ていうか、この辺はXamarinStudioと同じなんでしょうけど、XamarinStudioの仕様も知らないので)
コンソールアプリ
for Mac で作ったコンソールアプリをそのままWindowsの方にコピーしてみました。
で、Visual Studio 2015 で開いてみます。
おー、開けたよ!逆になんで?
プロジェクト情報を見てみると、.NET Framework 4.5 になっていました。
for Macの方でプロジェクト情報見ると・・・
Mac版ではプロジェクトのところからメニューを開いてオプションを選択するようです。
で、全般を選択すると
なるほど、コンソールアプリはMono/.NetFramework4.5で作られるんですね。
では、macの方でビルドしたexeをWindowsで実行すると・・・。
普通に実行できました。
逆にこれはmacでは、普通には動かないんですね。
mac初心者なんで最初あれ?ってなったんですが、exeってmacの実行ファイルではないようです。macで動かすためにはホストする何かが必要になります。で、.Netアプリを実行するにはmonoランタイムを使います。ターミナルでexeのフォルダまで行って、monoコマンドを実行します。
WinForms
どうも調べて見るとMonoのランタイムでWinFormsもある程度動くようです。ちょっとやってみたいですね。でも Visual Studio for Mac の新規作成ではWinFormsなんてない。もはや関わりたくない感がすごいw。でも先ほどのConsoleアプリの実験で分かったようにWindows版とMac版でソリューションの互換性はあるようです。というわけでWindows版でソリューション作ってそれをコピーしてみます。.Netのバージョンは4.5にしておきます。で、開くと
おー、開けた!
そして実行もしてみます。
実行もできますね。結構便利な気はしますが、もはや主流ではないんですねー。
それから、フォームのデザイナも開くことはできませんでした。残念。