タグ付けされた質問 「wcf」

Windows Communication Foundationは、サービス指向アプリケーションを迅速に構築するための統合プログラミングモデルを提供する.NET Frameworkの一部です。

16
コレクションが変更されました。列挙操作が実行されない可能性があります
デバッガーが接続されていると発生しないように見えるため、このエラーの原因を突き止めることはできません。以下はコードです。 これは、WindowsサービスのWCFサーバーです。NotifySubscribersメソッドは、データイベントが発生するたびにサービスによって呼び出されます(ランダムな間隔ですが、それほど頻繁ではありません-1日に約800回)。 Windowsフォームクライアントがサブスクライブすると、サブスクライバーIDがサブスクライバーディクショナリに追加され、クライアントがサブスクライブを解除すると、ディクショナリーから削除されます。このエラーは、クライアントが登録解除したとき(またはその後)に発生します。次にNotifySubscribers()メソッドが呼び出されたときに、foreach()ループが失敗し、件名のエラーが表示されます。このメソッドは、以下のコードに示すように、エラーをアプリケーションログに書き込みます。デバッガーが接続され、クライアントがサブスクライブを解除すると、コードは正常に実行されます。 このコードに問題がありますか?辞書をスレッドセーフにする必要がありますか? [ServiceBehavior(InstanceContextMode=InstanceContextMode.Single)] public class SubscriptionServer : ISubscriptionServer { private static IDictionary<Guid, Subscriber> subscribers; public SubscriptionServer() { subscribers = new Dictionary<Guid, Subscriber>(); } public void NotifySubscribers(DataRecord sr) { foreach(Subscriber s in subscribers.Values) { try { s.Callback.SignalData(sr); } catch (Exception e) { DCS.WriteToApplicationLog(e.Message, System.Diagnostics.EventLogEntryType.Error); UnsubscribeEvent(s.ClientId); } } } public …

18
REST API / Webサービスを保護するためのベストプラクティス[終了]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 2年前休業。 REST APIまたはサービスを設計するときに、セキュリティ(認証、承認、ID管理)を処理するための確立されたベストプラクティスはありますか? SOAP APIを構築する場合、ガイドとしてWS-Securityがあり、このトピックに関する多くの文献が存在します。RESTエンドポイントの保護に関する情報が少なくなりました。 RESTにはWS- *に類似した仕様が意図的にないことを理解していますが、ベストプラクティスまたは推奨パターンが浮かび上がってきたことを願っています。 議論や関連文書へのリンクは非常に高く評価されます。必要に応じて、.NET Frameworkのv3.5を使用して構築されたREST API /サービスのPOX / JSONシリアル化メッセージでWCFを使用します。

11
WCF vs ASP.NET Web API [終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 2年前休業。 WCFの背後にある概念を理解するために数か月を費やしてきましたが、最近、初めてのWCFサービスアプリケーションを開発しました。 設定ファイルのすべての設定を理解するのにかなり苦労しました。 私は環境について確信していませんが、あなたはそれで驚くべきことをすることができるようです。 先日、マイクロソフトがASP.NET Web APIと呼ばれる新しいものを発表したことを知りました。 私が読むことができるのは、RESTfulフレームワークであり、非常に使いやすく、実装も簡単です。 今、私は2つのフレームワークの主な違いは何か、そして古い WCFサービスアプリケーションを新しいAPIで変換する必要があるかどうかを理解しようとしています。 誰かが、それぞれの違いと使い方を理解するのを助けてくれませんか?
484 c#  wcf  asp.net-web-api 

13
WCF-メッセージサイズクォータを増やす方法
データベースからクライアントに1000レコードを返すWCFサービスがあります。ASP.NET WCFクライアントを持っています(WCFを使用するためにasp.net Webアプリケーションプロジェクトにサービス参照を追加しました)。 クライアントアプリケーションを実行すると、次のメッセージが表示されます。 受信メッセージの最大メッセージサイズクォータ(65536)を超えました。クォータを増やすには、適切なバインディング要素でMaxReceivedMessageSizeプロパティを使用します。 何か助けは?メッセージサイズの割り当てを増やす方法は?
454 .net  asp.net  wcf  .net-3.5 


26
WCFクライアントの「using」ブロックの問題の最善の回避策は何ですか?
usingブロック内でWCFサービスクライアントをインスタンス化するのが好きです。これは、実装するリソースを使用するための標準的な方法であるためですIDisposable。 using (var client = new SomeWCFServiceClient()) { //Do something with the client } ただし、このMSDNの記事に記載されているように、WCFクライアントをusingブロックでラップすると、クライアントがエラー状態(タイムアウトや通信の問題など)になるエラーをマスクできます。簡単に言えば、Dispose()が呼び出されると、クライアントのClose()メソッドが起動しますが、障害のある状態であるためエラーがスローされます。その後、元の例外は2番目の例外によってマスクされます。良くない。 MSDN記事で推奨されている回避策は、usingブロックの使用を完全に回避し、代わりにクライアントをインスタンス化して次のようなものを使用することです。 try { ... client.Close(); } catch (CommunicationException e) { ... client.Abort(); } catch (TimeoutException e) { ... client.Abort(); } catch (Exception e) { ... client.Abort(); throw; } usingブロックと比較して、それは醜いと思います。そして、クライアントが必要になるたびに書くコードがたくさん。 幸い、私はIServiceOrientedでこのような他のいくつかの回避策を見つけました。あなたは次から始めます: public delegate void UseServiceDelegate<T>(T proxy); …
404 c#  vb.net  wcf  using  wcf-client 

5
WCFとASMX Webサービスの違いは何ですか?
WCFとASMX Webサービスの間で完全に混乱しています。私は以前の段階で多くのWebサービスを使用してきましたが、WCFと呼ばれるこの新しいものが導入されました。Webサービスとして機能するWCFを作成できます。WCFにはもっと多くのものがあると思います。 WCFとWebサービスの違いは何ですか?それぞれいつ使用する必要がありますか?
375 wcf  web-services  asmx 

30
デフォルトのエンドポイント要素が見つかりませんでした
VS2008 / .NET 3.5ソリューションのWebサービスにプロキシを追加しました。クライアント.NETを構築すると、次のエラーがスローされます。 ServiceModelクライアント構成セクションで、コントラクト 'IMySOAPWebService'を参照するデフォルトのエンドポイント要素が見つかりませんでした。これは、アプリケーションの構成ファイルが見つからなかったか、このコントラクトに一致するエンドポイント要素がクライアント要素で見つからなかったためである可能性があります。 このエラーを検索すると、コントラクトで完全な名前空間を使用するように指示されます。これが完全な名前空間を持つ私のapp.configです: <client> <endpoint address="http://192.168.100.87:7001/soap/IMySOAPWebService" binding="basicHttpBinding" bindingConfiguration="IMySOAPWebServicebinding" contract="Fusion.DataExchange.Workflows.IMySOAPWebService" name="IMySOAPWebServicePort" /> </client> 私はローカルでXPを実行しています(Googleのヒットの多くがwin2k3について言及しているので、これについて言及します)app.configはapp.exe.configにコピーされるため、これも問題ではありません。 手がかりはありますか?

30
ブレークポイントは現在ヒットしません。Silverlightアプリケーションでこのドキュメントのシンボルが読み込まれていません
OK、私が持っているもの: Visual Studio 2010 RC、W7 x64は、Silverlightアプリケーションの新しいプロジェクトタイプを開始しました。ASP.NET WebアプリケーションプロジェクトでSilverlightアプリケーションをホストします。Silverlightバージョン3.0。LinqToSQLクラス、WCFサービス、Winform Testerアプリケーション(ソリューションのプロジェクト)、およびいくつかのクラス(ソリューションのプロジェクトとして)を追加しました。 昨日、突然、「ブレークポイントは現在ヒットしません。このドキュメントにはシンボルが読み込まれていません。IDEに表示されるメッセージですが、これはWebアプリケーションにのみ影響します。SilverlightとWinformアプリをデバッグできます。 メッセージを取り除くために私が試した/やったこと: Visual Studio設定をリセットする すべての\ Temporary ASP.NET Filesフォルダ内のすべてのファイルを削除しました(32ビット/ 64ビットごと、およびFramework 2.0および4.0ごとに1つあります) Visual Studio統合Webサーバーを使用してデバッグを試みました-通常はIISを使用していますが、ソリューションのプロジェクト出力では、すべてのプロジェクトフォルダー内のすべてのobjフォルダーとbinフォルダーを削除しました 新しいソリューションを作成し、すべてのプロジェクトをこの新しいソリューションに追加しました ソリューションsuoファイルを削除しました VSインストールの問題かどうかをテストする新しいASP.NET Webアプリケーションを作成しました=>この新しいプロジェクト/ソリューションをデバッグできます マシンを数回再起動しました vs.netインストールを修復しました IISResetを行いました IISからWebアプリを削除 IISで新しいWebアプリを作成するために、Webアプリのプロジェクトプロパティの下にある[仮想ディレクトリの作成]ボタンを使用しました すべてのプロジェクトのフレームワークバージョンを3.5から4.0に変更 2台目のマシンでソリューションを開いた=>同じ動作 バグ/同様の問題のためにMicrosoft Connectをクロールした 7時間を費やします。 つまり、これは私の人生で2回目です。前回はTemporary ASP.NET Files Folderを削除して解決しましたが、今回はあなたの助けが必要です。
331 c#  asp.net  wcf  debugging  iis 

6
Web APIからHttpClientを使用してJsonObjectをPOSTする
Web APIからJsonObjectを使用HttpClientしてPOSTしようとしています。私はこれにどう対処するかよくわからないので、サンプルコードのように多くを見つけることができません。 ここに私がこれまで持っているものがあります: var myObject = (dynamic)new JsonObject(); myObject.Data = "some data"; myObject.Data2 = "some more data"; HttpClient httpClient = new HttpClient("myurl"); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage response = httpClient.Post("", ???); 私は自分をJsonObjectとしてキャストする必要があると思いますStreamContentが、そのステップに夢中になっています。

12
指定されたURIスキーム「https」は無効です。「http」が必要です。パラメータ名:via
httpsで使用するために、basicHttpBindingでWCFサービスを作成しようとしています。これが私のweb.configです: <!-- language: xml --> <service behaviorConfiguration="MyServices.PingResultServiceBehavior" name="MyServices.PingResultService"> <endpoint address="" binding="basicHttpBinding" bindingConfiguration="defaultBasicHttpBinding" contract="MyServices.IPingResultService"> <identity> <dns value="localhost" /> </identity> </endpoint> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> </service> ... <bindings> <basicHttpBinding> <binding name="defaultBasicHttpBinding"> <security mode="Transport"> <transport clientCredentialType="None"/> </security> </binding> </basicHttpBinding> </bindings> ... <behaviors> <serviceBehaviors> <behavior name="MyServices.UpdateServiceBehavior"> <serviceMetadata httpsGetEnabled="true" /> <serviceDebug includeExceptionDetailInFaults="true" /> </behavior> …
281 c#  wcf  https 

12
IIS8上のWCF; * .svcハンドラーマッピングが機能しない
2012ビルド8400のIIS8でwcfサービスを実行しようとしています。 Webロールをインストールするときに、wcfのもの(3.51未満)が2008のように見つかりませんでした。 インストール時にsvcハンドラーマッピングが見つからなかったので、次のようにしました。 %windir%\Microsoft.NET\Framework\v3.0\WindowsCommunication Foundation\ServiceModelReg.exe –i これでハンドラーマッピングができましたが、それでも取得できます。 The resource you are looking for does not have a handler associated with it. (静的ファイルハンドラーを削除しました。) サイトは偽装を使用するために、従来のパイプラインを使用しています。
272 asp.net  wcf  iis-8  iis-8.5 

6
GUIDはすべて0(ゼロ)ですか?
私は、Guidsでオブジェクトをやり取りするWCFサービスをいくつかテストしています。私のWebアプリのテストコードでは、次のようにしています。 var responseObject = proxy.CallService(new RequestObject { Data = "misc. data", Guid = new Guid() }); 何らかの理由で、new Guid()の呼び出しは、次のようにすべて0(ゼロ)のGuidを生成しています。 00000000-0000-0000-0000-000000000000 何が原因でしょうか?
241 c#  .net  wcf  web-services  guid 

6
WCFサービスからクリーンなJSONを返すにはどうすればよいですか?
WCFサービスからJSONを返そうとしています。このサービスは、データベースから一部のコンテンツを返すだけです。データを取得できます。ただし、JSONの形式が心配です。現在、返されるJSONの形式は次のとおりです。 {"d":"[{\"Age\":35,\"FirstName\":\"Peyton\",\"LastName\":\"Manning\"},{\"Age\":31,\"FirstName\":\"Drew\",\"LastName\":\"Brees\"},{\"Age\":29,\"FirstName\":\"Tony\",\"LastName\":\"Romo\"}]"} 実際には、JSONをできるだけきれいにフォーマットしたいと思っています。正しくないJSONで表された同じ結果のコレクションは、次のようになるはずだと思います(正しくない可能性があります)。 [{ "Age": 35, "FirstName": "Peyton", "LastName": "Manning" }, { "Age": 31, "FirstName": "Drew", "LastName": "Brees" }, { "Age": 29, "FirstName": "Tony", "LastName": "Romo" }] 「d」がどこから来たのか私にはわかりません。エスケープ文字が挿入されている理由もわかりません。私のエンティティは次のようになります。 [DataContract] public class Person { [DataMember] public string FirstName { get; set; } [DataMember] public string LastName { get; set; } [DataMember] …
233 wcf  json 

6
[DataContract]の名前空間
[DataContract]および[DataMember]要素に使用する名前空間が見つかりません。私が見つけたものによると、以下を追加することで十分だと思われますが、私の場合はそうではありません。 using System; using System.Runtime.Serialization; これが私のコードのスニペットです: using System; using System.Runtime.Serialization; namespace MyNamespace { [DataContract] public class Tuple<T1, T2> { // A custom implementation of a Tuple //... //... } } そして私が得るエラー: タイプまたは名前空間名 'DataContract'が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか?) 適切な名前空間を使用していませんか?
230 c#  wcf  datacontract 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.