いつまで時間がかかるのかと思うぐらい Visual Studio 2017 Update 3 のリリースに時間がかかっていましたが、ようやく正式版がリリースされたようです。
更新内容はこれまでで一番多い気がします。そしてアップデートは必須ですね。
注意点としてはアップデートにめっちゃ時間がかかります。Visual Studio 本体のインストールよりもかかった気がするので、寝る前とかにアップデートをすると寝れなくなりそうです。
手元の MacBook Pro で 30 分ぐらいかかりました。時間のある時にやりましょう。
色々と良くなっている気がします。関係ないけどスプラッシュとか変わってます。
.NET Core 2.0
Update 3 と同時に .NET Core 2.0 がリリースされてます。.NET Core SDK もアップデートされました。
.NET Core 2.0 と .NET Standard 2.0 は .NET Blog にまとめられてます。明日の朝には ufcpp にぃにがブログに詳細な記事を書いてくれるはずなので、リンクだけ紹介しておきます。
Announcing .NET Core 2.0 | .NET Blog
Announcing .NET Standard 2.0 | .NET Blog
ちゃんと Docker Image も更新されてます。今回から ARM32 向けリリースが追加されたみたいです。
https://hub.docker.com/r/microsoft/dotnet/
Raspberry Pi では Mono を使う必要がありましたが、.NET Core 2.0 を使うことも出来そうです。
ASP.NET Core 2.0
.NET Core 2.0 と同時に ASP.NET Core 2.0 と Entity Framework Core 2.0 もリリースされています。
Announcing ASP.NET Core 2.0 | .NET Web Development and Tools Blog
Announcing Entity Framework Core 2.0 | .NET Blog
例によって Breaking Changes 祭りなので、1.1 からのアップデートには少し気を付けたい部分です。
ドキュメントにマイグレーション方法もまとまってるので、なるはやでアップグレードしたいところです。既に ASP.NET Core 1.1 を使っているプロジェクトで試してみようかと思ってます。
新しく ASP.NET Core プロジェクトを作成しようとすると .NET Core 2.0 SDK のダウンロードを促す表示が出るので、先に SDK をインストールしておきます。15.3 と同時に入って欲しかった。
2.0 向けのプロジェクトテンプレートとしては Razor Pages と React が増えたようです。Web アプリケーションは Razor Pages で、もう片方が Core MVC となっています。
作成されたプロジェクトはこれまでとあまり変わっていません。全ての ASP.NET Core パッケージを参照するメタパッケージがインストールされているぐらいです。
関係ないですけど、いつまで bower を使い続けるつもりなんだろう。
ASP.NET
発行プロファイルの作成時に名前を指定できないのは変わらずですが、後から名前を変えることは出来るようになりました。デザイン性のない適当感あるダイアログですけど。
そしてちょっと前の Chrome から証明書の CN じゃなくて SAN を見るようになった影響で、IIS Express で HTTPS を有効にすると自己署名証明書で常に警告が出てましたが、それが解消されました。
地味に改善されましたが、それ以外は特に目立った変更はなさそうです。
Azure Functions Tools
これまでプレビューとして公開されていた Azure Functions Tools も Visual Studio 2017 Update 3 と同時に正式版になったようです。とはいえ同時には入らないみたいなので、別にインストールします。
インストールすると Azure Function プロジェクトが作れます。新しい Function の追加がちょっとわかりにくいですが、新規追加のダイアログに Azure Function が用意されてます。
用意されているテンプレートから選べます。この辺りは Azure Portal と変わりませんね。
作成すれば F5 を押すだけでデバッグ実行も出来ますし、Azure に直接デプロイも出来ます。NuGet 周りもちゃんと対応されたみたいですし、以前のバージョンより使い勝手は良くなってます。