問題タブ [basichttpbinding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1058 参照

silverlight - web.configで変更すると、WCFMaxReceivedMessageSizeは更新されません

私はウェブを見回しましたが、この問題の解決策はどれも私にはうまくいかないようです。Silverlightアプリケーションによって消費されているWCFサービスがあります。大きなオブジェクトグラフを更新しようとするまで、すべてが正常に機能します。私のトレースログは素敵なエラーで私を迎えます:

受信メッセージの最大メッセージサイズクォータ(65536)を超えました。クォータを増やすには、適切なバインディング要素でMaxReceivedMessageSizeプロパティを使用します。

web.configファイルとSilverlightのClientConfigファイルの両方で設定を変更し、プロキシを手動で作成してコードで値を設定しようとしました。

私のweb.config:

私のSilverlight:

私がここで見逃したものを見た人はいますか?私がWebで見つけたものはすべて、誰かがmaxReceivedMessageSizeを設定するのを忘れたか、エンドポイントにbindingConfiguration名の値を与えるのを忘れたということを指摘しています(どちらも私が行いました)。

0 投票する
2 に答える
8455 参照

wcf - basicHttpBinding、webHttpBinding、およびmexHttpBindingエンドポイントを1つのWCFサービスに共存させるにはどうすればよいですか

WCFサービス(ターゲット.NET 4)があり、SOAP、POX、JSON、MEXの4つのエンドポイントを公開する必要があります。

私の構成ファイルは次のようになります。

また、サービスを実行すると、WCFテストクライアントが返す-オブジェクト参照がオブジェクトのインスタンスに設定されていないオブジェクト参照とスタックトレースを含むサービスメッセージを追加できませんでした。System.NullReferenceException

ただし、JSONおよびPOXエンドポイントはアクセス可能であり、正常に機能します。一方、構成からコメントアウトすると、WCFテストクライアントはSOAPサービスを適切に表示します。

現時点では、サービスに実装されている単純なメソッドは1つだけです。

poxエンドポイントとjsonエンドポイントを追加してmexエンドポイントにブレーキをかけるのはなぜですか?

0 投票する
1 に答える
479 参照

.net - WCFプロキシクライアントのシングルトンパターンのパフォーマンス

パフォーマンスの観点から、シングルトンパターンを使用してWCFでプロキシクライアントを設計する方がよいでしょうか。それとも、オブジェクトを作成して呼び出し後に閉じるたびに行うのでしょうか。

0 投票する
1 に答える
1651 参照

wcf - netTcpBinding/BasicHttpBinding

netTcpBinding と BasicHttpBinding の主な違いを教えてください。

私の現在のプロジェクトでは、BasicHttpBinding を netTcpBinding に変換し、パフォーマンスの問題が発生します。BizTalk の値が 1:00:00 に設定されていても、タイムアウトが発生します。理由がわかりませんでした。

0 投票する
1 に答える
447 参照

wcf - WCF SOAP Web サービスと認証

basicHttpBinding(SOAP) を使用する WCF サービスを作成しています。Web サービスへの各リクエストで、アカウント名とキー (基本的にはユーザー名とパスワード) が要求されるようにしたいと考えています。現在、これらの値は、公開されている各メソッドに引数として渡されています。これは、この状況を処理する適切な方法ですか? DRYに違反しているようで、もっと簡単な組み込みの方法があると思います。リクエストをインターセプトしてユーザー名とパスワードをヘッダーに挿入する例をいくつか見てきましたが、そのアプローチではクライアントの接続にかなりの労力がかかるようです。

ありがとう!

0 投票する
1 に答える
2308 参照

asp.net - Windows ID を ASP.NET から WCF に渡す

統合 Windows 認証を有効にし、匿名認証を無効にして、IIS でホストされている WCF サービスを使用しています。ASP.NET からこのサービスを呼び出そうとすると、次の MessageSecurityException が発生します。

「HTTP 要求は、クライアント認証スキーム 'Negotiate' では許可されていません。サーバーから受信した認証ヘッダーは 'Negotiate,NTLM' でした。]"

何か案は?

これは私のサービス構成です:

これは私がサービスを呼び出す方法です:

0 投票する
4 に答える
10850 参照

wcf - エンドポイントごとに異なる ListenUri を使用するように、2 つのエンドポイントを持つ WCF サービスを構成するにはどうすればよいですか?

webHttpBindingを使用してエンドポイントを公開し、WPF と ASP.NET アプリケーションの両方で消費されるWCF サービスがあります。すべてがうまく機能します。

現在、Windows Phone (WP7) からサービスを利用しようとしています。ただし、.NET Framework はまだ WP7 に完全に追いついていないため、System.ServiceModel.Web名前空間が使用できwebHttpBindingず、WP7 では機能しません。

さて、私のサービスでは、 を に切り替えるwebHttpBindingbasicHttpBinding、電話アプリケーションが動作します。

ただし、使用するために WPF および ASP.NET アプリケーションを作り直す必要はありませんbasicHttpBinding

webHttpBindingWCF が複数のバインディングをサポートできることを理解しており、との両方のエンドポイントを公開するようにサービスを構成して実行しようとしましたbasicHttpBinding。サービスは正常に起動しているようです。ただし、WPF および ASP.NET アプリケーションはアクセスできません。WP7 アプリケーションでサービス参照を作成しようとすると、次のメッセージが表示されます。

バインド インスタンスは、リッスン URI 'http://localhost:1726/GeneralService.svc' に既に関連付けられています。2 つのエンドポイントが同じ ListenUri を共有する場合は、同じバインディング オブジェクト インスタンスも共有する必要があります。競合する 2 つのエンドポイントは、AddServiceEndpoint() 呼び出し、構成ファイル、または AddServiceEndpoint() と構成の組み合わせで指定されました。

baseAddress同僚と私は、 、address、およびlistenUri属性にさまざまな変更を加えてみましたが、うまくいきませんでした。私たちは現在、試行錯誤の段階にあり、あまり効果的であることが証明されていません.

0 投票する
1 に答える
1951 参照

wcf - Windows サービスでホストされている WCF は、インターネット経由でアクセスできますか?

WCF についての理解が必要です。

私はクライアントサーバーアプリケーションに取り組んでいます。プロジェクトプランはこんな感じ。

Windows 7 で SQL Server 2008 を実行しているサーバーが 1 台あります (Windows 7 はサーバーに最適な選択ではないことはわかっていますが、現在は Windows 7 を使用しています)。サーバー側で net tcp バインディングを使用して、Windows サービスでホストされる WCF サービスのクラスターを構築することを計画しています。これらの WCF サービス クラスターは、アプリケーションおよびデータベース トランザクションのすべてのビジネス ロジックを処理します。

現時点では、クライアント アプリケーションを実行している 25 の Windows クライアント (将来的には増加する可能性があります) があります。すべてのクライアントは同じ LAN にあるため、上記のアーキテクチャの作業を推測し、すべてのクライアントはネット TCP バインディングを使用してサーバー上で実行されている WCF サービスにアクセスできます。間違っていたら訂正お願いします...

将来やりたいことは、同じ WCF サービスにアクセスするモバイル クライアント アプリケーションまたは Silverlight クライアント アプリケーションを作成したいということです...これは、Windows サービスで WCF サービスをホストしており、モバイル クライアント アプリケーション / Silverlight クライアント アプリケーションの場合同じネットワーク(同じLAN)上にありますか?? (コメントは見られないと思います)

インターネット経由でアクセスしたい場合はどうすればよいですか?? 上記の Windows サービスでホストされている WCF サービスは、インターネット経由でアクセスできますか?? (nettcp バインディングの場合は可能ですが、他の WCF アプリケーションによってのみ可能です - コメントを参照してください)

そうでない場合、Windows サービスでホストしているときに WCF サービスの http 基本エンドポイントを作成し、インターネット経由でアクセスできるようにすることはできますか??

そうでない場合、Windows サービスと IIS で同じ WCF サービスをホストできますか??

インターネットだけでなく LAN 経由でも WCF にアクセスできるようにする場合、最適なオプションは何ですか??

0 投票する
1 に答える
1405 参照

wcf - WCF basicHttpBinding: Rollback when reply to client fails

I am exposing a WCF service through a basicHttpBinding that executes several operations on a database.

I want to guarantee that if the client does not receive the reply the database operations are rolled back (without any transaction flow through WCF). E.g. the client calls the "DoX" method which executes on the server but before it is finished the client crashes. The database operations should then be rolled back as soon as the reply can not be send to the client.

Is there any way to do that? Will the [OperationBehavior(TransactionScopeRequired=true)] attribute work in such a manner? Is there a possibility to handle communication errors on the server side?

Update 1: It seems [OperationBehavior(TransactionScopeRequired=true)] commits the transaction before the reply is send to the client and thus can not be used to perform a rollback if the client does not receive the reply.

Update 2: To state it clearly again, I do not have the need for the transaction to interact in any way with the client side. The client should neither know of the transaction, have the ability to cancel or commit it, nor should any transaction flow through the binding. The only place I want the transaction to rollback is on the server side if the transport channel can not deliver the message to the receiving client. With the case of TCP/IP this information should be readily available to the server. (No ACK of the TCP packet send back to the client)

So a hypothetical execution flow on the server side (notice the lack of client side) should be:

#xA;
0 投票する
1 に答える
1423 参照

wcf - メッセージで WCF ヘッダーが重複しています

最近、メッセージの先頭に 1 回、メッセージの最後に 1 回、メッセージ内のヘッダーをランダムに 2 回返す wcf サービス呼び出しに問題がありました。これは私がフィドラーを通して見ているものの例です:

これは常に発生するわけではありませんが、ランダムに発生しているようです。特定のサービス コールだけで発生するのではなく、どのコールでも発生する可能性があります。まだパターンを特定できていません。

Silverlight アプリケーションでロード バランサーを介してバインディング タイプ basicHttpBinding を使用しています。

編集:

かなり基本的な構成があります。

サービス側:

クライアント側: