Silverlight/WPF ルートをたどるのではなく、MVC3 をバックエンドとして HTML5 で (シングルユーザー) アプリケーションを構築したいと考えています。これは可能ですか?これをスタンドアロンのデスクトップ アプリケーションに使用することは可能ですか、それとも実用的ですか?
IIS でセットアップすることもできますが、それは考えではありません。移植性がなく、固定ディレクトリが必要であり、IIS をインストールせずにどこにでもアプリケーションを起動することはできません!
Silverlight/WPF ルートをたどるのではなく、MVC3 をバックエンドとして HTML5 で (シングルユーザー) アプリケーションを構築したいと考えています。これは可能ですか?これをスタンドアロンのデスクトップ アプリケーションに使用することは可能ですか、それとも実用的ですか?
IIS でセットアップすることもできますが、それは考えではありません。移植性がなく、固定ディレクトリが必要であり、IIS をインストールせずにどこにでもアプリケーションを起動することはできません!
私は、MVC アプリをホストする機能を持つスタンドアロンのインプロセス .Net ベースの Web サーバーを試しました。これは確かに可能であり、Windows アプリケーションの Web ブラウザー コントロールと組み合わせて、スタンドアロン アプリケーションでそのような Web サーバーを使用できます。 、または Visual Studio 2010 のヘルプ システムと同じように通常のブラウザーを使用します。
利用可能なオプションがいくつかあります。
非常にきれいに見える IIS ホスト可能 Web コアの使用に関する別の質問に対する回答がありますが、IIS 7 がマシンにインストールされている必要があります。
別の方法として、これを実行する小さな Web サーバーを自分で作成してみました。それほど難しいことではありませんが、ASP.Net 要求を処理するときに IIS が行うのとまったく同じように Web サーバーを動作させることが難しいことでした。少なくとも一部の MVC アプリケーションでは動作しますが、すべてのMVC アプリケーションで動作するわけではなく、MVC アプリケーションの複雑さによっては、すべてを動作させるためにある程度の「微調整」がほぼ確実に必要になります。
私が書いたものは、CodePlexで入手できます。それがどのように機能するかを確認し、自分で作成してみてください (または、自分の目的に合わせて変更します。非オープンソース ライセンス バージョンが必要な場合は、質問してください)。
動作する Web サーバーが必要な場合は、C# WebServer を使用することをお勧めします (ただし、実際には使用していないため、どのように動作するかについてはあまりわかりません)。
(近日中に Web サーバーを完成させるかもしれませんが、現時点では他のプロジェクトが多すぎます!)
頭に浮かぶ最初のオプションはIIS Expressを使用することです。これは基本的に、ポケットに入れて持ち運べる小さな IIS です。ただし、この場合、アプリのインストール ストーリーがどうなるかはわかりません (IIS Express をインストールしてからアプリをインストールする必要があるのか、それともすべてを一度に実行できるのか)。