2

最近、Windows Server 2008 で遊んでいて、Web アプリケーションの構成を行いたいと考えています。アプリケーションのセッション状態を「状態サーバー」に変更して、より多くの作業プロセスを利用できるようにしました (現在は 4 に設定されています)。

その後、アプリケーションにログインしようとすると、このエラーが発生しました。

セッション状態をシリアル化できません。'StateServer' および 'SQLServer' モードでは、ASP.NET はセッション状態オブジェクトをシリアル化するため、シリアル化できないオブジェクトまたは MarshalByRef オブジェクトは許可されません。「カスタム」モードのカスタム セッション状態ストアによって同様のシリアル化が行われる場合、同じ制限が適用されます。

エラーが発生したときにスタックトレースにこれが表示されるため、宣言したEntitySetに関連していると思われます。

[SerializationException: Type 'System.Data.Linq.EntityRef`1[[CtcSystem.Domain.Entities.Account.Account, CtcSystem.Domain, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]' in Assembly 'System .Data.Linq、Version=4.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089' はシリアル化可能としてマークされていません。]

クラスで[Serializable]タグを使用しましたが、State Server でアプリケーションを実行できるように EntitySet をシリアライズ可能にする方法はありますか?

ありがとう

4

1 に答える 1

0

最善の方法は、部分クラスに ISerializable インターフェイスを実装することです...

于 2012-05-07T08:01:54.277 に答える