トップ回答者
ASP.NET Coreアプリをローカルアプリとして納品

質問
-
お世話になります。
ここ最近は ASP.NET MVCで主に開発していますが、最近話題の(?) ASP.NET Coreについてお聞きしたいと思います。
ASP.NETのようなWebアプリでなく、ローカルアプリをクライアント向けに配布しようとする場合、従来はお馴染みのWindowsデスクトップアプリの他、WPFやUWPでしたが、今後は「ASP.NET Core アプリを配布」するなんて選択肢は考えられますか?
まだCoreについて開発経験がなくトンチンカンな質問かもしれません。
ただ、CoreアプリがIIS無しで動くという事を考えると、ローカルアプリとしてクライアントに納品という事もあり得るのではないか?と思いついたのでした。
利点として以下のようなものが考えられます。- ユーザーがWindowsアプリよりブラウザベースのインターフェイスに慣れている
- 開発者によっては、ローカルアプリよりASP.NETの開発に慣れている
- Google Chart APIやGoogle Mapsなど、Webの資産を活用できる(ライセンスの問題はありますが)
- UWPにあった「SqlServerに直接接続できない」問題が、Coreアプリなら解決
- (Linuxはともかく)Macでも動く
いかがでしょうか?
Coreアプリがどういう形で配布できるのか等、知らないことが多いため楽観的すぎるかもしれませんが、何か問題等考えられますでしょうか?また、それでもUWPが上回る利点などありましたら、教えて頂けると幸いです。
回答
-
> CoreアプリがIIS無しで動くという事を考えると、ローカルアプリとしてクライアントに納品と
> いう事もあり得るのではないか?ASP.NET Core と言っても、結局サーバー(Windows の場合は IIS、Mac/Linux の場合は Kestrel) 上で動く Web アプリになるようですので、それはないと思います。
以下の記事の構成図を見てください。
ASP.NET Coreの概要を理解してセットアップしよう
https://codezine.jp/article/detail/9681ただ、自分が知らないだけで、話が変わってきていて、他にもいろいろ活用方法が出てきているのかもしれませんが。
#以下のような話もありますし、業務上の差し迫った必要がなければ様子見という人も多いのではないかと思います。ASP.NET Coreが.NET Frameworkサポートを終了
https://www.infoq.com/jp/news/2017/06/ASPNET-Core-2#実は自分も様子見です。構成ファイル他の変更が多くて今までの知識では歯が立たないし、以下のような不具合(?)もまだ残っているようですし、業務上の差し迫った必要もないですし。(笑)
ASP.NET Core で文字化け
http://surferonwww.info/BlogEngine/post/2017/06/16/decoding-problem-caused-by-view-created-by-scaffolding-in-aspnet-core-project.aspx- 回答の候補に設定 立花楓Microsoft employee, Moderator 2017年6月30日 4:19
- 回答としてマーク Uduky 2017年6月30日 8:24
-
私もあまり詳しくないのですが、SurferOnWwwさんが以下で示された構成図を見て、WindowsでもIISは必須ではないように受け取りました。つまり、Windowsだと、IISか、IIS Expressか、Kestrelで動作させることができると。
ASP.NET Coreの概要を理解してセットアップしよう
https://codezine.jp/article/detail/9681で、少し調べてみたのですが、Coreに内包されているKestrelというWebサーバーだけでも動くのですが(セルフホスト)、管理とかセキュリティの関係でIISを立ててリバースプロキシにしたり、IISで直接実行させたりすることができるようです。
Is it possible to self-host a ASP.NET Core Application without IIS (not Web API)?
https://stackoverflow.com/questions/30298458/is-it-possible-to-self-host-a-asp-net-core-application-without-iis-not-web-apiASP.NET CoreをIISで動かす
http://athome-developers.hatenablog.com/entry/2016/08/31/120000ASP.NET Coreを動かすためのIISの構築方法
http://qiita.com/taiga_takahari/items/7809c78393750c42e443★良い回答には回答済みマークを付けよう! MVP - .NET http://d.hatena.ne.jp/trapemiya/
- 回答の候補に設定 立花楓Microsoft employee, Moderator 2017年6月30日 4:19
- 回答としてマーク Uduky 2017年6月30日 8:24
すべての返信
-
> CoreアプリがIIS無しで動くという事を考えると、ローカルアプリとしてクライアントに納品と
> いう事もあり得るのではないか?ASP.NET Core と言っても、結局サーバー(Windows の場合は IIS、Mac/Linux の場合は Kestrel) 上で動く Web アプリになるようですので、それはないと思います。
以下の記事の構成図を見てください。
ASP.NET Coreの概要を理解してセットアップしよう
https://codezine.jp/article/detail/9681ただ、自分が知らないだけで、話が変わってきていて、他にもいろいろ活用方法が出てきているのかもしれませんが。
#以下のような話もありますし、業務上の差し迫った必要がなければ様子見という人も多いのではないかと思います。ASP.NET Coreが.NET Frameworkサポートを終了
https://www.infoq.com/jp/news/2017/06/ASPNET-Core-2#実は自分も様子見です。構成ファイル他の変更が多くて今までの知識では歯が立たないし、以下のような不具合(?)もまだ残っているようですし、業務上の差し迫った必要もないですし。(笑)
ASP.NET Core で文字化け
http://surferonwww.info/BlogEngine/post/2017/06/16/decoding-problem-caused-by-view-created-by-scaffolding-in-aspnet-core-project.aspx- 回答の候補に設定 立花楓Microsoft employee, Moderator 2017年6月30日 4:19
- 回答としてマーク Uduky 2017年6月30日 8:24
-
私もあまり詳しくないのですが、SurferOnWwwさんが以下で示された構成図を見て、WindowsでもIISは必須ではないように受け取りました。つまり、Windowsだと、IISか、IIS Expressか、Kestrelで動作させることができると。
ASP.NET Coreの概要を理解してセットアップしよう
https://codezine.jp/article/detail/9681で、少し調べてみたのですが、Coreに内包されているKestrelというWebサーバーだけでも動くのですが(セルフホスト)、管理とかセキュリティの関係でIISを立ててリバースプロキシにしたり、IISで直接実行させたりすることができるようです。
Is it possible to self-host a ASP.NET Core Application without IIS (not Web API)?
https://stackoverflow.com/questions/30298458/is-it-possible-to-self-host-a-asp-net-core-application-without-iis-not-web-apiASP.NET CoreをIISで動かす
http://athome-developers.hatenablog.com/entry/2016/08/31/120000ASP.NET Coreを動かすためのIISの構築方法
http://qiita.com/taiga_takahari/items/7809c78393750c42e443★良い回答には回答済みマークを付けよう! MVP - .NET http://d.hatena.ne.jp/trapemiya/
- 回答の候補に設定 立花楓Microsoft employee, Moderator 2017年6月30日 4:19
- 回答としてマーク Uduky 2017年6月30日 8:24