[[Open棟梁Project>http://opentouryo.osscons.jp/]] - [[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]] -[[戻る>ASP.NET]] * 目次 [#a6735c56] #contents *概要 [#jc6b91c5] -[[OWIN]]の思想に近いミドルウエアによるリクエストパイプラインの採用 -System.Webからの脱却、[[IIS]]以外のWebサーバーでも実行可能 -パッケージ管理(依存関係の管理)で、必要なものだけをアプリに取り込める。 -クロスプラットフォームでアプリの開発/実行が可能 -ASP.NET Web API、ASP.NET Web Pagesが[[ASP.NET MVC]] 6に統合 *経緯 [#v8f1a803] -[[OWIN]] からの流れを汲んだOSSのクロスプラットフォームな開発プラットフォーム(的な) -ASP.NET vNext([[OWIN]]) ---> ASP.NET 5 ---> [[ASP.NET Core]]と名前を変えてきている。 以下が参考になります。 -Road to RTM - ASP.NET Core に至るまでの迷走の歴史 - しばやん雑記~ http://blog.shibayan.jp/entry/20160608/1465396234 --Connect(); での発表と ASP.NET の今後について - しばやん雑記~ http://blog.shibayan.jp/entry/20141116/1416067227 --ASP.NET 5 から ASP.NET Core 1.0 に変更になります - しばやん雑記~ http://blog.shibayan.jp/entry/20160120/1453256566 -オープンソース版ASP.NET「ASP.NET 5.0」の新名称を~ 「ASP.NET Core 1.0」にすると発表:CodeZine(コードジン)~ https://codezine.jp/article/detail/9206 **名称の変更 [#ja8a96fe] 名称が2回程変更されている。 -ASP.NET vNext(OWIN) -ASP.NET 5 / MVC 6 / EF 7 -ASP.NET Core 1.0 / Core MVC 1.0 / EF Core 1.0 *構成・機能 [#y50d9fc1] **[[.NET Core]] [#becfafae] **Startup クラス [#i29d9563] OWIN でも存在していた Startup クラスが、~ ASP.NET Core では大きく変化している。 ***コンストラクタ [#tac30db5] JSON / 環境変数などから設定を読み込む ***Startup.Configureメソッド [#edc6f236] リクエストパイプラインに認証などの各種ミドルウェアを追加できる。 ***Startup.ConfigureServicesメソッド [#ddddafd9] サービスクラスを DI コンテナに登録する。 -ミドルウェア -フィルター -コントローラ -モデルバインディングなど、 **開発ツール [#i5312ab2] ***Bower [#v9a7e038] -JavaScriptとCSSライブラリが含まれた、クライアント側ライブラリ用のパッケージマネージャ -ASP.NETプロジェクトにJavaScriptライブラリを追加する場合、bower.json設定ファイルに直接追加 ***Grunt、Gulp [#d26159f6] 多くのタスクを管理するタスクランナー -LESS ( The dynamic stylesheet language ) -TypeScript、CoffeeScriptファイルのコンパイル -lint(コンパイラより厳密なチェックを行う)の実行 -JavaScriptの縮小 -JavaScriptの単体テストの実行 -,etc. *ASP.NET CoreとASP.NET 4.6 [#m6d0cb17] **機能面 [#h4eca79e] ASP.NET CoreとASP.NET 4.6 は別物 **乗り換えについて検討 [#r3fe298f] 立ち位置によってかなり変わってくる。 ***旧資産に縛られている場合 [#ef0372db] 旧資産に縛られている場合はなかなか移行できないと思う。 縛られている場合、[[ASP.NET Core]]に振り切ってイイか?は、~ -例えば、[[SaaS開発>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?QandAAnalysisEngine%E3%81%AE%E6%8A%80%E8%A1%93%E9%81%B8%E5%AE%9A]]の方でChartControlなどを使っているが、~ [[ASP.NET Core]]ではソコまでの機能拡充がされる気配が今の所無いと思う。~ -Linuxも必須の要件ではないし、そもそも私のドメインはビジネス・アプリケーションだし、~ 例えば、Dynamics CRMもWeb Forms (ASPX)で実装されていたりする。~ と、個人的には結構微妙と考えている。 以下の様な意見も。 -Hello World, [[ASP.NET Core]] 1.0! – とあるコンサルタントのつぶやき~ https://blogs.msdn.microsoft.com/nakama/2016/07/07/aspnetcore10/ -neue cc - LightNode 2 - OWINから[[ASP.NET Core]]への移植実例~ http://neue.cc/2016/07/28_535.html 更に、[[ASP.NET Core]]には以下のような問題もあるもよう。 -開発者を苦しめる.NETのHttpClientのバグと紛らわしいドキュメント~ https://www.infoq.com/jp/news/2016/09/HttpClient -例えば、ASP.NET IdentityのPasswordHasherの実装が違う。 -- https://aspnetidentity.codeplex.com/SourceControl/latest#src/Microsoft.AspNet.Identity.Core/PasswordHasher.cs --https://github.com/aspnet/Identity/blob/dev/src/Microsoft.AspNetCore.Identity/PasswordHasher.cs -ASP.NET MVC アプリケーションを ASP.NET Core MVC に~ マイグレーションしようとして挫折した話 - しばやん雑記~ http://blog.shibayan.jp/entry/20160629/1467209826 とは言え、時代に追随するためにはどこかのタイミングで飛び移る必要はある気はする。~ しかし、なんとなく、まだ機が熟していないのかな?という感じの情報が散在している。~ ***旧資産から解放された場合 [#l4cd5e2a] 旧資産から解放された場合は、思い切ったシフトができると思う。 Windowはエンタープライズでの利用が主であるが、 Web系の仕事にシフトする等、以下の様な条件に合致する場合、 -新しい、ASP.NET Web Pages などがハマり、既存資産を捨てることができる場合。 -昔から使っているC#/VBなどの言語、Visual Studioの開発環境を使用したい。 思い切ったシフトができると思う。 (PHP等との生産性比較がPointになりそう)。 -PHPの生産性の高さはやばい~ http://anond.hatelabo.jp/20131220234312 -PHP開発者が心得ておくべき10の鉄則 - Qiita~ http://qiita.com/ka215/items/c4bda101e51b7fe82ab2 -PHP プログラミングのための 5 つの良い習慣を身につける~ https://www.ibm.com/developerworks/jp/opensource/library/os-php-5goodhabits/ *トピック [#w4347dc8] **認証 [#cd9d3413] CookieAuthentication ミドルウェア設定でいける模様。 -ASP.NET Core MVC 1.0 で Cookie を使ったユーザー認証を独自に実装する - しばやん雑記~ http://blog.shibayan.jp/entry/20160517/1463476453 *参考 [#d425994d] **ASP.NET 5 [#u114f5a7] -ASP.NET 5の紹介 (1/4):CodeZine(コードジン)~ https://codezine.jp/article/detail/8537 -特集:ASP.NET 5を探る:「最新.NET技術がよく分からない」と感じる人のための用語整理 (1/3) - @IT~ http://www.atmarkit.co.jp/ait/articles/1505/19/news016.html **ASP.NET Core [#zbfe757a] -Microsoft、開発フレームワーク~ 「.NET Core 1.0」「ASP.NET Core 1.0」「EF Core 1.0」を提供開始 -INTERNET Watch~ http://internet.watch.impress.co.jp/docs/news/1007447.html -ASP.NET Core 1.0の概要を整理する - ryuichi111stdの技術日記~ http://ryuichi111std.hatenablog.com/entry/2016/05/28/160518 **移行関係の情報 [#d18846cb] -.NET Core - .NET Core による .NET のクロスプラットフォームへの移行~ https://msdn.microsoft.com/ja-jp/magazine/mt694084.aspx -サイトを ASP.NET Core + .NET Core で作り直しました - 😊ソフトウェア開発者のブログ~ https://creativeweb.jp/archive/20160223 -.NET Coreへの移植 | ++C++; // 未確認飛行 C ブログ~ http://ufcpp.net/blog/2016/2/porting-to-net-core/ ---- Tags: [[:.NET開発]], [[:.NET Core]], [[:ASP.NET]], [[:ASP.NET MVC]]