0

Visual Studio 2005 で古い Windows アプリを使用しています。元のアプリで参照されている Web サービスには 2 つの関数があり、自動生成された reference.cs ファイル内でピークに達すると、非同期呼び出しを許可する他の関数がいくつかあることに気付きます。つまり、 WhateverFunctionNameIsCalledを開始し、WhateverFunctionNameIsCalled を終了します。

私の問題は、新しい Windows アプリを作成し、同じ Web 参照を追加しましたが、reference.cs プロキシ クラスで Begin 関数と End 関数が生成されないことです。何が起こっているか知っている人はいますか?

4

2 に答える 2

0

これは VS2005 であり、非同期メソッドを生成していません。わかった; .NET 2.0 ですか、それとも .NET 3.0 (VS2005/WCF アドオン経由) ですか? 「wsdl.exe」(オリジナル) は「FooAsync」メソッドを生成するように見えますが、WCF (「scvutil.exe」) は「BeginFoo」パターンを生成する場合があります。「wsewsdl2.exe」や「wsewsdl3.exe」など、WSE* を使用したかどうかを確認することもできます。

私の賭けは、WCF バージョンです。異なるフレームワーク (Silverlight など) には、独自のプロキシ生成クラスがあることにも注意してください。

于 2010-04-07T11:29:01.423 に答える
0

最初のステップは、Web サービスから返された wsdl ファイルをチェックして、これらのメソッドがまだサーバー上で利用可能かどうかを確認することです。

于 2010-04-06T23:23:26.247 に答える