ブラウザー内で構成および制御できるように、Windows サービスで Web UI をホストする方法を探しています。シンプルで軽量なソリューションが必要ですが、IIS は使用したくありません。
私はおそらくそのほとんどを手作業で巻くことができましたが、プロセスを容易にするためにすでに何かが作られているのではないかと思っていました.
ブラウザー内で構成および制御できるように、Windows サービスで Web UI をホストする方法を探しています。シンプルで軽量なソリューションが必要ですが、IIS は使用したくありません。
私はおそらくそのほとんどを手作業で巻くことができましたが、プロセスを容易にするためにすでに何かが作られているのではないかと思っていました.
埋め込みサーバーが必要で、サービスや外部 HTML/ASPX ファイルが必要ない場合の別のオプションを次に示します。
WebConfig - ワイヤレス ルーターにはそれがあり、今ではあなたもできます http://www.codeproject.com/KB/game/WebConfig.aspx
私が作成したWindowsサービスでまったく同じことをしたいと思っていました。やっと参考になる記事に出会えたかもしれません。私はまだこれを試していませんが、サンプルソースとともに、私たち二人が必要とするものの基盤を持っていると思います。
この記事の焦点は、コード内から Web サービス (ASMX) をホストする方法ですが、ASPX ページも同様に簡単にホストできると思います。
http://msdn.microsoft.com/en-us/magazine/cc163879.aspx
-デレク
Web サービス インターフェイスの代わりに UI を見ている場合、できることがいくつかあります。
1) 必要以上かもしれませんが、元の Cassini コード ベースを使用してサービスで ASP.NET をホストできます: http://blogs.msdn.com/dmitryr/archive/2005/09/27/474534.aspx
2)ポートを開き、サービスへのアクセス量に応じて、サービス内の別のスレッドに単純な HTML ページを配置することもできます。
私はこれらの両方を数回実行しましたが、セキュリティを気にしない限り、どちらも非常に簡単です。たとえば、信頼できるイントラネットからのみマシンにアクセスできます。そうでない場合は、マシン上で IIS をホストし、安全な Web アプリを作成することをお勧めします。
いつでもWCFを使用して、サービス内でエンドポイントをホストし、そのように公開できます。
私が考えることができる唯一の他のオプションは、Web アプリが書き込み可能でサービスが読み取り可能なファイル、または Web サイトによって書き込まれサービスから読み取られるデータベースを持つことです。WCF を介して通信エンドポイントを単純に公開するほど洗練されたものはありません。
編集 - 追加
具体的には、これを HTTP エンドポイントとして公開し、Web サービスと同じようにブラウザと直接やり取りすることを考えていました。
ただし、サービスが通信エンドポイントをホストしている限り、サービスと通信するように従来の Asp.Net アプリケーションをセットアップできない理由はありません。
編集:これを使用しないでください。それは概念の単純な証明であり、私はそれでどこにも行きませんでした. より良い解決策については、他の回答をご覧ください。
まあ、遅いよりはましです。それに取り組む時間があまりありませんでした。
http://github.com/leddt/SimpleHttpServer
これは非常に基本的なものであり、本番環境での使用を意図したものではありません。これは私が実験している小さなプロジェクトです。ただし、コメント、提案などは受け付けます...