2012-03-03 13 views
1

私は、ASP.NET Webアプリケーションから呼び出す特定のメソッドを持つC#Windowsサービスアプリケーションを開発しました(結果を返すメソッドがあることが重要です)。私の最初の推測では、WindowsサービスのdllをWebアプリケーションにインポートすることができたが、Windowsサービスの実行可能ファイルしか見つけられず、dllもまったく見つからなかった。 Windowsサービスをdllにコンパイルすることはできますか?それ以外の場合は、WebアプリケーションをWebアプリケーションに参照できる他の方法がありますか?C#WindowsサービスをASP.NET Webアプリケーションに参照することは可能ですか?

答えて

3

共通の機能をクラスライブラリプロジェクトに抽出し、両方のプロジェクトから参照します。

0

WindowsサービスはWebサービスをホストしていますか、WindowsサービスとWebサイトでアクセス可能なコードが含まれていますか?

前者の場合は、通常の方法でWebサービスに接続することができます(Visual Studioでサービス参照を追加するなど)。後で行う場合は、WindowsサービスプロジェクトとWebプロジェクトの両方が参照できるクラスライブラリを作成します(Visual Studioの[参照の追加]を使用)。

0

2つのオプションがあります。呼び出されるコードが必要な場合は、コードから呼び出されたサービスのカスタムアクションを介してWindowsサービス機能を呼び出すことができます。

しかし、私はあなたが必要とするものはより複雑であり、応答も必要としていることを収集しています。この場合、sga101のように、適切な機能を別のクラスにカプセル化し、両方の場所でこれを使用します。つまり、コードプロジェクトは両方とも同じソリューションに含める必要があります(厳密には必要ではありませんが、コードマッチングを維持するのが最も簡単です)。

関連する問題