2011-06-15 5 views
1

ASP.NETアプリケーションではWebServicesのセットを持ち運ぶのにServiceReferenceCollectionを使用し、コードビハインドではすべてを把握するように求められます公開WebMethod(s)と.Net Reflectionを使用してWebServicesの対応する引数。しかし、ServiceReferenceクラスは、私が反射のために使用できるPathの情報しか提供しませんが、GetType()からPathへの方法はわかりません。ServiceReference.Pathが指すWebServiceのすべてのWebメソッドを取得する方法

+0

は、なぜあなたは 'ServiceReferenceCollection'を使用したくないアプリケーションドメインにロードされています

がいることを想定しますか?あなたは何を達成しようとしていますか? –

+0

ScriptManagerにはいくつかの機能が必要ですが、他の機能は可能な限り避けてください。私たちはScriptManagerを参照し、独自のものを開発しています。 –

+0

私はなぜそれを使ってサービスのWebメソッドとパラメータを調べているのですか?あなたがScriptManagerのために必要としているからといって自分自身を制限しないでください。 –

答えて

1

Pathは、asmxファイルへのパスです。

このファイルをテキストファイルとして開くことができます。

<%@ WebService 
    Language="C#" CodeBehind="MyService.asmx.cs" 
    Class="Namespace1.Namepsace2.ClassName" %> 

テキストとして読み込み、ファイルのクラス名を解析します。
クラス名を取得したら、リフレクションを使用してクラスメソッドを反復することができます。

  • ASMXファイルが
  • Webサービスのアセンブリアクセス可能で、種類が
+0

@Alex:.asmxファイルは、別のプロジェクトにある場合に必ず読み込み可能ですか?彼はどのようにWebサービスクラスを見つけましたか? –

+0

@ John Saunders - このソリューションがOPのために機能することを私が知っているかどうかを尋ねる場合は、私の答えは「いいえ」です。わかりません。私は、同じプロジェクト内のすべてのWebサービスを想定していました。 –

+0

@Alex:あなたの前提が私の-1の理由です。 –

関連する問題