「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
OSSのクロスプラットフォームな開発プラットフォーム
- OWINの思想に近いミドルウエアによるリクエストパイプラインの採用
- System.Webからの脱却、IIS以外のWebサーバーでも実行可能
- パッケージ管理(依存関係の管理)で、必要なものだけをアプリに取り込める。
- クロスプラットフォームでアプリの開発/実行が可能
- ASP.NET Web API、ASP.NET Web PagesがASP.NET MVC 6に統合
経緯 †
OWIN / Katana Projectからの流れを汲む。
名称の変更 †
OWIN / Katana Project -> ASP.NET vNext(OWIN) -> ASP.NET 5 -> ASP.NET Core
と、名称が、過去2・3回に渡って、変更されている。
- OWIN / Katana Project
- ASP.NET vNext
- ASP.NET 5 / MVC 6 / EF 7
- ASP.NET Core 1.0 / Core MVC 1.0 / EF Core 1.0
参考 †
以下が参考になります。
構成・機能 †
Startup クラス †
OWIN でも存在していた Startup クラスが、
ASP.NET Core では大きく変化している。
コンストラクタ †
JSON / 環境変数などから設定を読み込む
Startup.Configureメソッド †
リクエストパイプラインに認証などの各種ミドルウェアを追加できる。
Startup.ConfigureServices?メソッド †
サービスクラスを DI コンテナに登録する。
- ミドルウェア
- フィルター
- コントローラ
- モデルバインディングなど、
開発ツール †
Bower †
- JavaScriptとCSSライブラリが含まれた、クライアント側ライブラリ用のパッケージマネージャ
- ASP.NETプロジェクトにJavaScriptライブラリを追加する場合、bower.json設定ファイルに直接追加
Grunt、Gulp †
多くのタスクを管理するタスクランナー
ASP.NET CoreとASP.NET 4.6 †
機能面 †
ASP.NET CoreとASP.NET 4.6 は別物
乗り換えについて検討 †
立ち位置によってかなり変わってくる。
旧資産に縛られている場合 †
旧資産に縛られている場合はなかなか移行できないと思う。
縛られている場合、ASP.NET Coreに振り切ってイイか?は、
- Linuxも必須の要件ではないし、そもそも私のドメインはビジネス・アプリケーションだし、
例えば、Dynamics CRMもWeb Forms (ASPX)で実装されていたりする。
と、個人的には結構微妙と考えている。
以下の様な意見も。
更に、ASP.NET Coreには以下のような問題もあるもよう。
- 例えば、ASP.NET IdentityのPasswordHasher?の実装が違う。
とは言え、時代に追随するためにはどこかのタイミングで飛び移る必要はある気はする。
しかし、なんとなく、まだ機が熟していないのかな?という感じの情報が散在している。
旧資産から解放された場合 †
旧資産から解放された場合は、思い切ったシフトができると思う。
Windowはエンタープライズでの利用が主であるが、
Web系の仕事にシフトする等、以下の様な条件に合致する場合、
- 新しい、ASP.NET Web Pages などがハマり、既存資産を捨てることができる場合。
- 昔から使っているC#/VBなどの言語、Visual Studioの開発環境を使用したい。
思い切ったシフトができると思う(PHP等との生産性比較がポイントになりそうではある)。
参考 †
ASP.NET 5 †
ASP.NET Core †
移行関係の情報 †
Tags: :.NET開発, :.NET Core, :ASP.NET, :ASP.NET MVC