私は WPF アプリケーションの問題で数日間苦労してきました。問題は、Web メソッド呼び出しの型を処理するために「オンザフライ」でシリアライザーを生成するクライアントに要約されるようです。そのメソッドが初めて呼び出されるとき (Web サービス自体は既に実行されています)、たとえば 8 秒かかり、その後の呼び出しにはたとえば 20 ミリ秒かかる場合があります。この遅延の間、クライアント WPF プロセスの CPU は v. high です。
XmlSerializer を使用する場合、svcutil を使用してこれらのシリアライザー アセンブリを事前に生成する方法があります。(私たちのように) 通常の WCF DataContractSerializer を使用している場合、このオプションは存在しないようです。
私が望むのは、すべてのデータ コントラクト (大量) のすべての型に対してこのアセンブリを事前に生成できるようにすることです。あるいは、このプロセスを、コード化してバイナリでデータを渡すことができるカスタム プロセスに置き換えることです (この Web サービス/クライアントの両端を所有しており、どちらも .NET 4) です。私は既に BinaryForamtter と GZip 圧縮を使用しており、これによりデータの転送が高速化されますが、常に XML に復元されてフレームワークによって逆シリアル化されるため、この問題は残ります。
何か案は?