問題タブ [service-reference]
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.
wcf - 同じプロジェクト内の WCF サービスへのサービス参照を追加する
参照されているサービスが同じ VS プロジェクト内で定義されているプロジェクトにサービス参照を追加することは、許容されるプログラミング手法ですか? (サービスとサービス参照は同じプロジェクトにあります)
例:
MyWebAppProj
-Services
--MyService
-Service References
--MyServiceServiceReference.MyServiceClient
-Default.aspx.cs は MyServiceServiceReference.MyServiceClient を使用します
この背後にある理由は、Silverlight アプリをプロジェクトに追加できるからです。もしそうなら、すべてのビジネス ロジック メソッドをサービス レイヤーを介して公開する必要があるため、最初にそれを行い、Web ページと Silverlight ページの間で標準化を維持するためにあらゆる場所でそれらを使用しないでください。
wcf - 同一のサービスを提供する複数のサーバー
さまざまな場所に多数のサーバーがあり、すべて同じ Web サービス アプリケーションを実行していますが、それぞれが独自の SQL Server DB を使用しています。Web サービスを使用するデスクトップ アプリケーションを作成しています。同じ wweb サービス アプリケーションを実行しているネットワーク内のすべてのサーバーのドロップダウンをユーザーに提示したいと考えています。Web サービス アプリを実行しているサーバーごとに ServiceReference を追加して、サーバーと同じ数のプロキシを用意する必要がありますか? または、サービスの単一インスタンスを定義し、ドロップダウンから選択するエンドポイントのリストを動的に構築できますか?
wcf - WCF で netTcpBinding を使用してサービス参照を追加できますか?
netTcpBinding を使用するときに、ローカル プロキシ クラスを生成して WCF サービスを呼び出すサービス参照を Visual Studio に追加することはできますか?
私が理解しているように、サービス参照メソッドでは、WSDL をサービスによって公開する必要があります。これは、http バインディングによってのみサポートされていますか?
おそらく、開発中にサービス参照をローカルに追加してから、本番環境で実行時に nettcp を使用するように構成を切り替えることはできますか?
私が質問している理由は、私が Windows サービスでホストしているためです (サーバー 2003、WAS がなく、IIS を使用できない)。また、HTTP 名前空間の予約を行うためのアクセス許可を変更できないため、HTTP バインディングを使用できません。NetTcp は機能しますが、この特定のケースでは、やり取りしているオブジェクト グラフに、EDMX モデルによってサービスで生成されたオブジェクトが含まれているため、コントラクト アセンブリで共有できません。
前もって感謝します!
.net - Sharepoint 2010 Web 参照は機能するのに、サービス参照は機能しないのはなぜですか
Sharepoint は、NTLM 認証を使用するようにセットアップされています。
http://myserver/Sites/Ops/_vti_bin/Lists.asmx?WSDLを Web 参照として参照すると、メソッドを呼び出して有効な応答を取得できます。
サービス参照と同じ URL を参照すると、サーバーはメソッドを呼び出すときに例外をスローします。
私のアカウントは、Sharepoint ファームの管理者です。
これは、サービス リファレンスの app.config です (ほとんどが自動生成されます)。
悲しいことに、例外が提供する唯一の情報は次のとおりです。
「タイプ 'Microsoft.SharePoint.SoapServer.SoapServerException' の例外がスローされました。」
他の詳細はありません。
私が使用しているコードは次のとおりです。
何かご意見は?Web リファレンスではなく、サービス リファレンスを使用したいと考えています。
アップデート:
ロブの提案を試してみたところ、次のエラーが発生しました。
は既知のドキュメント タイプとして認識されませんでした。既知の各タイプからのエラー メッセージは、問題の解決に役立つ場合があります。 html; charset=utf-8').'. - 「DISCO ドキュメント」からのレポートは、「「http://myserver/_vti_bin/Lists.asmx?disco」のダウンロード中にエラーが発生しました」です。- HTTP ステータス 404: Not Found でリクエストが失敗しました。- 「WSDL ドキュメント」からのレポートは、「ドキュメント形式が認識されません (コンテンツ タイプは「text/html; charset=utf-8」です)」です。- 「XML スキーマ」からのレポートは「ドキュメント形式が認識されません (コンテンツ タイプは「テキスト/html; charset=utf-8').'.
web-services - バージョン管理:svcmap、disco、xsd、wsdl、svcinfo、およびデータソースファイル
Fooという名前のWebサービスがあります。
したがって、Foo.svcファイルとFoo.svc.csの背後にあるコードがあります。
Silverlightプロジェクトを追加し、Foo.svcサービスを使用したいので、サービス参照を追加して、名前空間FooBarと呼びます。
これにより、次のファイルが作成されます。
- Reference.cs
- Reference.svcmap
- Foo.xsd
- Foo.disco
- configuration.svcinfo
- Foo.wsdl
- また、さまざまな*.datasourceファイル。
時間の経過とともに、Foo.svcを更新し、Webサービス(メソッドとインターフェイス)を追加すると、FooBarディレクトリ内のファイルの数が増えていきます。
このディレクトリには26個のFoo(nn).xsdファイルがあります。ここでnn=1から26です。
私のconfiguration.svcinfoはconfiguration91.svcinfoまでです。
私の質問はこれですか?これらのファイルのいずれかをバージョン管理する必要がありますか?ビルド/デプロイを実行するたびに(更新サービス参照を実行する限り)、それらをすべて削除できますか?
visual-studio-2010 - WCF サービスのサービス参照を追加するときの VS 2010 エラー「オブジェクト参照がオブジェクトのインスタンスに設定されていません」
以下を含む VS2010 (RTM) ソリューションがあります。
WCF サービス プロジェクト
コンソール WCF クライアント プロジェクト
DataContract とメンバーの
クラス プロジェクト いくつかの単純なクラスのクラス プロジェクト
コンソール クライアント プロジェクトにサービス参照を正常に追加し、クライアントを実行しました。その後、長い開発サイクルを繰り返してサービスを変更し、コンソール サービス リファレンスを更新しました。次に、プロジェクトの名前空間とアセンブリ名、および参照と app.config を使用して .cs を変更しました。もちろん、ビルドされないためにいくつかのことを見逃していたので、最終的にプロジェクト参照とサービス参照を削除し、クリーンアップして正常にビルドしました。
次に、サービス参照を再度追加しようとしましたが、それは検出されましたが、OK 時に「オブジェクト参照がオブジェクトのインスタンスに設定されていません」がスローされました。以下の回答を修正してください...
c# - Web 参照とサービス参照。1つだけ動作しますか?シリアライズ?
2つのアプリケーションがあります。
1 つは私の Web サービスへの webreference を使用し、2 番目は私の Web サービスへの servicereference を使用します。
私が呼び出している方法があります:
車には 2 つのプールがあります。
この webMethod をデバッグしていますが、...
最後に、webservice は車の良いコレクションをスローします。これには車が 1 台あります: code="bmw",Type.Van
しかし...webrefenceを持つアプリケーションは同じコレクションを受け取り、servicereferenceを持つアプリケーションはフィールドコードがnullのコレクションを取得します...
servicereference の呼び出し:
Web サービスの呼び出し:
.net - 「サービス参照の追加」を使用すると、オプションのメソッド パラメータが表示されません
私はWCFサービスに取り組んでいます。サービス操作が 1 つありますFunction getValues(Optional verbose as Boolean) as List(of String)
。
これは機能します:
' まず、iRM インターフェイスを含むファイル参照を追加します。
Dim ep3 As EndpointAddress
ep3 = New EndpointAddress("net.pipe://localhost/RM/RMPipe")
Dim netPipeRMClient As RMLib.iRM netPipeRMtClient = ChannelFactory(Of RMLib.iRM) _ .CreateChannel(New NetNamedPipeBinding, ep3)
ただし、これは機能しません。
' Add Service Reference を使用してクライアント タイプを取得します... Dim ep3 As EndpointAddress
ep3 = New EndpointAddress("net.pipe://localhost/RM/RMPipe")
dim netPipeRMClient as RM.iRMClient = _
new RM.IRMClient(New NetPipeBinding、ep3)
List(of String) = netPipeRmClient.getValues() としての Dim foo
最後の行で、「パラメーターに引数が指定されていません」というコンパイル時エラーが発生しますverbose
。
パラメータは、verbose
メソッド シグネチャではオプションとして明確に定義されていましたが、WCF サービス コントラクトでは、「サービス参照の追加」で作成したクライアントを使用すると、オプションではないようです。
何か案は?
date - サービス参照を生成するときに、タイプ s:date の XSD 要素が文字列になるのはなぜですか?
WSDL と、文字列ではなく DateTime であると思われるすべてのプロパティから、新しいサービス参照を作成しようとしています。
たとえば、次の Contact の xsd 定義は次のとおりです。
BirthDate の型は s:date ですが、生成された型 (Reference.cs 内) は文字列です。
Web プロジェクトを作成し、それをサービス参照ではなく Web 参照として追加すると、正しく DateTime になります。これは、wsdl.exe と svcutil.exe が舞台裏で動作する方法と関係があると思いますが、それでも、このプロパティが DateTime であることを Visual Studio に正しく認識させる方法を見つけようとしています。