0

私は WCF を初めて使用します。必要な値を含む文字列を返す WCF サービスを開発しました。同じコンピューターの IIS で公開し、WPF クライアント アプリを作成しました。デバッグ モードでテストしたところ、問題なく動作しました。 IIS でクライアント アプリを公開して、同じマシンでテストしたところ、すべて問題ありませんでした。これは完全に信頼できるアプリです。

問題は、別のマシンでクライアント アプリを実行しようとすると、そのマシンからサービスにアクセスできることです。

http://ip_address/OASWS.Utilities/Service1.svc

問題はなく、アプリを実行できます。

http://address/OASWS.Utilities.BrowserClient/UtilitiesBrowserClient.xbap

アプリケーションは問題なく実行されますが、アプリがサービスから関数を実行しようとすると、すぐに次のエラーが発生します。

Startup URI: http://ip_address/OASWS.Utilities.BrowserClient/UtilitiesBrowserClient.xbap

Application identity: http://ip_address/OASWS.Utilities.BrowserClient/UtilitiesBrowserClient.xbap#UtilitiesBrowserClient.xbap, Version=1.0.0.5, Culture=neutral, PublicKeyToken=5273a5e76684b5e7, processorArchitecture=msil/UtilitiesBrowserClient.exe, Version=1.0.0.5, Culture=neutral, PublicKeyToken=5273a5e76684b5e7, processorArchitecture=msil, type=win32

System.Runtime.Serialization.SerializationException: アセンブリ 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' からの型 'System.ServiceModel.Channels.ReceivedFault' は、シリアル化可能としてマークされていません。System.Runtime.Serialization.FormatterServices.InternalGetSerializableMembers (RuntimeType 型) で System.Runtime.Serialization.FormatterServices.GetSerializableMembers (Type 型、StreamingContext コンテキスト) で System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.InitMemberInfo() で System. System.Runtime.Serialization.Formatters.

そして、サービスが返すのは単純な文字列だけなので、何が起こっているのか、どこからエラーが発生しているのかについての手がかりはありません。

誰にもアイデアはありますか?

ありがとう!!

4

1 に答える 1

0

WCF サービス内のコードが FaultException 以外の例外をスローした場合、同様の動作を見たことがあります。これも XBAP でのみ発生します。

于 2012-11-14T10:45:51.697 に答える