0

リストの操作中に WCF エラーが発生しました:

「トランスポート接続からデータを読み取れません: 既存の接続がリモート ホストによって強制的に閉じられました」というメッセージが表示され、WCF サービスからリストを返そうとしました。

注意してください; 1.私のビジネスオブジェクト Bank は KnownTypeAttribute のように設定されています[ServiceKnownType(typeof(ProjectName.Bo.Bank))]

  1. WCF サービスからオブジェクト Bank を返すことができます

  2. 私の内部例外エラー階層は、例外のようなものです: 基になる接続が閉じられました: 受信時に予期しないエラーが発生しました。

InnerException: トランスポート接続からデータを読み取ることができません: 既存の接続がリモート ホストによって強制的に閉じられました

InnerException: 既存の接続がリモート ホストによって強制的に閉じられました

  1. 私は試してみました[ServiceKnownType(typeof(System.Collections.IList))]

要するに、WCFクライアントが受信しようとしているときにエラーが発生していますreturn List<Bank>。何か提案があれば教えてください。

4

2 に答える 2

0

よくわかりませんが、ジェネリッククラスを返すときにジェネリックインターフェイスを使用すべきではありませんか? IList の代わりに IList<T> ..

于 2012-05-22T07:36:19.990 に答える
0

解決!! ServiceKnownType の問題でした。既知のタイプ ローダーでは、次のようなランタイム タイプを追加する必要があります。

Type aaa =  Type.GetType("System.Collections.Generic.List`1[[ProjectName.BusinessObjects.Bank, ProjectName.BusinessObjects, Version=4.0.0.0, Culture=neutral, PublicKeyToken=null]]");

既知のタイプ。追加 (aaa);

同じ問題を抱えている人なら誰でもこれを試すことができます。私の環境では動作します!!

于 2012-05-23T05:42:21.383 に答える