問題タブ [endpoints]
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.
c# - リモート ソケット エンドポイントの IP アドレスの取得
接続されたソケットのリモート IP アドレスを確認するにはどうすればよいですか?
アクセスできる RemoteEndPoint オブジェクトと、その AddressFamily メンバーがあります。
これらを利用してIPアドレスを見つけるにはどうすればよいですか?
ありがとう!
現在試行中
localhost エンドポイントの 127.0.0.1 ではなく 1.0.0.127 を取得します。これは正常ですか?
wcf - WCF: Why does passing in a remote endpoint fail?
The problem I am having connecting a wcf client application to a host running on a separate machine is documented in a question previously asked:
WCF: Why does passing in a remote endpoint fail?
However, the solution provided here says you need to use a SpnEndpointIdentity with an empty string. Since my code doesn't look anything like the case in the example I have referenced, I need to know what to do with the SpnEndpointIdentity object I have created.
I have a ChannelFactory upon which I call Create channel, passing in an EndpointAddress:
(NB: ChannelFactory is of type IChannelFactory, where T is the service contract interface) So what do I do with spnEndpointIdentity? I can't pass it to CreateChannel.
Or perhaps I can use it somehow when I create the channel factory:
Again, I can't pass it into the constructor, so what do I do with it?
Thanks.
c# - WCFサービスの単一のエンドポイントをプログラムで設定する方法
サービスがリッスンするIPとポート番号を含め、WCFサービスのユーザー構成を許可しようとしています。ユーザーはこれらの値を設定できる別の構成アプリケーションを持っていますが、私が直面している問題は、新しいServiceHostエントリを作成するためにapp.configにエンドポイントを定義する必要があることです...しかし私のエンドポイントは別の構成ファイルで定義され、実行時にプログラムでバインドする必要があります。
次のことを行うと( WCF app.configエンドポイントアドレス設定をプログラムで変更する方法に基づいていますか? :
サービスは、app.configで定義されたURIと構成ファイルで定義されたURIの両方でリッスンします。元のエンドポイントを削除したり、エンドポイントを定義せずにサービスを作成したりする方法はありません。
構成アプリケーションからapp.configに書き込むことはオプションではありません。構成された値を、別のXML構成ファイルからプログラムでプルする必要があります。
何かご意見は?
編集:サービスはWindowsサービスとして実行され、HTTPエンドポイントを公開しますが、IISでホストされているWebサービスとしては実行されていません-それによって状況がまったく変わる場合
wcf - WCF エンドポイント アドレス、アドレスを指定した後でもデフォルトを使用可能
これらは私のエンドポイントです
endpoint name="rest" address="" binding="webHttpBinding" behaviorConfiguration="poxBehavior" contract="IActionService"
endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"
/hereでサービスを利用できるようにします
アドレスを「休憩」に変更したとき
endpoint name="rest" address=" rest " binding="webHttpBinding" behaviorConfiguration="poxBehavior" contract="IActionService" endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"
その後、サービスは /rest/here で利用できます。
これは理にかなっていますが、 /here の元のアドレスからも入手できます
アドレスを「rest」に設定したため、元のアドレスは存在しないと思いました。
私は何を間違っているか誤解していますか?
乾杯
usb - USB エンドポイントの停止エラー
CDC デバイスで「エンドポイント停止エラー」が発生しています。USB スタックがケーブルを検出しています。状態は実行中に設定されますが、エラーコードは「USB_ENDPOINT_STALLED」を示す 0x11 として設定されます。確認したところ、エンドポイントが適切に割り当てられていることがわかりました。
- 「エンドポイントの停止エラー」が報告されるシナリオはどのようなものですか?
- これをどのように処理しますか?
お知らせ下さい!
wcf - WCF - IIS を使用しないリモート サービス - ベース アドレス?
私は、WCF サービスのアドレス指定に頭を悩ませようとしています。
サーバーが時々 (おそらく 1 日に 1 回) データを各クライアントにプッシュする必要があるクライアント サーバー セットアップがあります。そのデータを受信するために、NT サービスでホストされている各クライアントに軽量の WCF リスナー サービスを用意したいと考えています。他のタスク用にいくつかのローカル WCF サービスをホストする NT サービス セットアップが既にあるため、このオーバーヘッドは最小限に抑えられます。
サーバー上に既存のレガシー コードがあるため、サービスを ASMX として公開しbasicHttpBinding
、接続を許可するために使用する必要があると思います。
各クライアントはユーザーによってサーバーに登録されるため (クライアントは個別に構成する必要があります)、検出は問題になりません。
私の質問は、アドレス指定はどのように機能するのですか? ユーザーがサーバー上のクライアントのアドレスをフォームに入力することを想像します
あるいは
その場合、App.config でクライアント サービスを構成するにはどうすればよいですか? 私は使用しlocalhost
ますか?
そうでない場合、サービスをサーバーに公開するための推奨される方法は何ですか?
ノート:
- クライアントに必要なハードウェアに余分な要件が追加されるため、IIS でホストしたくありません。
- クライアントはほぼ確実に、パブリック インターネット上ではなく、LAN 上に配置されます。
c# - C#WCFサーバーは「リストを取得します' エントリは 1 つですが、クライアントはそれを受け取りません
サーバー (fluentNHibernate を使用するサーバー) からクライアントのリストを取得しようとしています。クライアント オブジェクトは次のとおりです。
サブリストを削除しようとしましたが、この簡略化されたバージョンのクライアントでも問題が発生します。
私の流暢なマッピングは次のとおりです。
以下に示すクライアント メソッドは、サーバーに接続します。サーバーはリストを取得し、すべてがオブジェクトに正しく表示されますが、返されたときにクライアントは何も受け取りません (List オブジェクトを受け取りますが、その中には何もありません。
呼び出し方法は次のとおりです。
そしてサーバーメソッド:
サーバー メソッド インターフェイスは次のとおりです。
最後の参考として、クライアントの app.config エントリを次に示します。
そして私のサーバーapp.config:
以前は「ソケットのクローズ/ネットワークまたはタイムアウト」エラーが発生していましたが、トレースは、コールバックでリスニング エンドポイントを探していたものの、エンドポイントが見つからなかったことを明確に示していました。とにかく、 UseNetSerializer を追加した後、そのエラーはなくなりましたが、今は何も得られません。
PS。コメントアウトされたすべてのリスト項目を追加すると、DB からエントリを取得できますが、クライアントでは何も受信されません。
[UseNetDataContractSerializer] を削除すると、svclog に次のエラーが表示されます。
警告: 説明 Faulted System.ServiceModel.Channels.ServerSessionPreambleConnectionReader+ServerFramingDuplexSessionChannel
警告: 説明 Faulted System.ServiceModel.Channels.ServiceChannel
エラー: [eCows.Data.Models.Client#3] の初期化 - ロールのコレクションの遅延初期化に失敗しました: eCows.Data.Models.Client.Addresses、セッションまたはセッションが閉じられませんでした
...
エラー: ServiceModel クライアント構成セクションでコントラクト 'ILogbookManager' を参照する既定のエンドポイント要素が見つかりませんでした。これは、アプリケーションの構成ファイルが見つからなかったか、このコントラクトに一致するエンドポイント要素がクライアント要素に見つからなかったためである可能性があります。
.Not.LazyLoad を List マッピング項目に追加すると、エラーが返されなくなりますが、クライアント情報も受信されません。
wcf - サービスまたはサービス コントラクトに設定された EndPointDispatcher および属性
私は WCF と IServiceBehaviors を使用しており、EndPointDispatchers を追加しています。
確認したいのは、EndPointDispatcher で、サービスまたはサービス コントラクトにどの属性が設定されているかを確認する方法があるかということです。
これを行う理由は、サービスに属性がある場合、新しいインスペクターが追加され、そうでない場合は無視されるためです。