2011-12-28 24 views
0

私はASP.NET MVC 3プロジェクトを行っており、いくつかのUIコントロールの実装を担当しています。私はいくつかのWebサービスを呼び出し、データをUIコントロールにバインドする必要があります。 Webサービスホスト(私たちはそれらを制御できません)は、ユーザーを認証してセキュリティトークンを生成するために、最初にUsernameTokenクラス(WSE 2.0)を実装する必要があります。私は2006年にWSE 2.0がWCFに取って代わることを理解しています.WSE 2.0を使用できるようにするためにVS 2005に戻したくありません。私の選択肢は何ですか?ASP.NET MVC 3とWSE 2.0

ありがとうございました!

答えて

0

私はDarin Dimitrovのアプローチがうまくいかないと恐れています。私が最終的に行ったのはWSE 2.0をインストールした後、WSEインストールディレクトリ(c:\ Program Files(x86)\ Microsoft WSE \ v2.0 \ Microsoft.Web.Services2.dll)にある​​へのdll参照を追加したものです。 Microsoft.Web.Services2.WebServicesClientProtocolから継承するサービスのReference.csファイルも変更しました。私はUsernameTokenクラスを見つけられ、正常に認証することができました。

私はこの分野の専門家ではないので、これが正しい方法であるかどうかはわかりませんが、それでも機能します。

0

ASP.NET MVCアプリケーションにService Referenceを追加して、WebサービスWSDLを指すようにします。これにより、WSEと互換性のある厳密に型指定されたWCFクライアントが生成されます。さまざまな相互運用性のシナリオをカバーするan articleがあります。

+0

お返事ありがとうございます。私はあなたがリンクした記事を読んでこれに関心を持っています - _ "理論的には、WSE 2.0を使用してWSE 3.0(およびWCF)と相互運用できるようにWebサービスを開発することは、具体的にはSOAP 1.1、WSDL 1.0、およびWS-Security 1.0ですが、WECFとの相互運用性を計画する最も安全な方法は、WSE 2.0コードをWSE 3.0にアップグレードすることです。私は複数のWSDLを持っていますか? – tempid

+0

たとえば、私は 'http:// xxx/WSLogin.asmx'と' http:// xxx/GetData.asmx'を持っています。 WSLoginとGetDataのために_two_ WSDLサービス参照を1つ追加する必要がありますか?これが初心者の質問であれば謝る前に私はこれをしなかった。 – tempid

+0

@ user349308の場合、強力な型付けされたクライアントプロキシを生成するには、['svcutil.exe'](http://msdn.microsoft.com/en-us/library/aa347733.aspx)コマンドラインツールを使用します。 'svcutil.exe http://xxxx/WSLogin.asmx http:// xxx/GetData.asmx'という複数のサービスURLを指定することができます。明らかに、2つのサービス間で共通するクラスは、クライアント上で1回だけ作成されます。 –