2011-12-30 10 views
1

私は自分のコンピュータにVisual C#プロジェクトを持っています。私は、ユーザがウェブブラウザを使ってそれを操作できるようにしたいと思います。私は研究をしましたが、おそらくこれを行うためにCGIを使用することを理解しています。CGIファイルのようなインターネット上のC#ファイルを実行する

しかし、私はこれを.plと.cppファイルで行うことができましたが、Cシャープ(.cs)ファイルでどのようにそれを行うのか分かりません。誰も私がこれをやる方法を説明することはできますか?

EDIT:ウェブページがバックエンドプログラムとして自分のC#プログラムを通信する代替ソリューションがある場合、それも機能します。

更新:私のホスティングプロバイダでキャンセルし、ホームベースのWebサーバー(ウィンドウ)を設定した後、CGIとして動作するようにC#ファイルを取得しました。みんなあなたの助けをありがとう!

+0

なぜASP.NETを使用して探している機能を公開していませんか? –

+0

残念ながら、C#の私の経験はASP.NETのそれをはるかに超えています。私の場合、ASP.NETはオプションではありません。 – danielmhanover

+0

あなたが研究をしたなら、間違いなくこれを見つけたでしょう:http://www.codeproject.com/KB/cs/cgi_csharp.aspx。これはあなたのために働かなかったか? –

答えて

3

あなたは私たちにいくつかの文脈を与えなければなりません...なぜasp.netはオプションになりませんか?単にIISのコンテキストで実行したくない場合は、単にWindowsサービスを作成して(WCFサービス、または必要な場合は未処理のソケットを公開する)ことができます。

編集:あなたがしたい場合http://www.mono-project.com/Main_Page

あなたはmod_monoのようなものを使用するか、次のいずれかです。UNIXであるサーバーに関する最近のコメントに反応して、そのサーバー上の.NETコードを実行するためにMONOを使用することができますmanos de mono

+0

彼はUnix上にあるので、IISはオプションではありません。 –

+0

私は今Monoを見ています。私は瞬間的にアップデートを行います – danielmhanover

+0

残念ながら、私はモノをインストールすることはできません – danielmhanover

0

まず、Mono projectコンパイラと実行時環境がシステムにインストールされていると仮定します。

CGIが標準入力と標準出力を介して全体がで行われます。 (これは、Perl、Python、RubyなどでCGIスクリプトを書くのがとても簡単な理由の1つです。通常の標準入力を読み込み、変数を解析して、クライアントに表示させたい出力を書き出します)あなたがMimeタイプを含むentire headerを担当していることを忘れないでください。

あなたはより速く実行何かが必要な場合は、CGIのfork(2) + execve(2)が再起動何度も何度もして、CLRを、あなたが実装することができ、一定FastCGI protocol(少なくとも、私はWikipediaのページへのC#実装を見ていない)自分をソケットを使用してCLRを1回だけ起動すると、妥当なパフォーマンスが得られます。 (Natがインタラクティブコマンドのためにそれを使用するのに十分速いMonoプロセスの開始時間に情熱を持っていることを覚えているようですので、軽くロードされたサーバは一般的な古いCGIインタフェースには何の問題もありません)

関連する問題