1

最近我在玩Windows Server 2008, ,並想爲我的Web應用程序進行一些配置。 我已將我的應用程序的會話狀態更改爲「狀態服務器」,因此它可以使用更多的工作過程(現在將其設置爲4)。無法序列化與System.Data.Linq相關的會話狀態。 EntitySet

之後,當我嘗試登錄到應用程序時,出現此錯誤。

無法序列化會話狀態。在'StateServer'和'SQLServer'模式下,ASP.NET將序列化會話狀態對象,因此不允許使用不可序列化的對象或MarshalByRef對象。如果自定義會話狀態存儲在「自定義」模式下進行類似的序列化,則適用相同的限制。

我懷疑它是與我已經宣佈了EntitySet的,因爲我看到在堆棧跟蹤時發生錯誤:

[SerializationException:類型 「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 =中立,PublicKeyToken = b77a5c561934e089'未標記爲 可序列化。]

我已經使用[Serializable]我的類上的標記, 所以有什麼辦法可以使EntitySet可串行化,以便應用程序可以在狀態服務器下運行?

感謝

+0

可能重複:是,LINQ到SQL對象序列化換會話狀態( http://stackoverflow.com/questions/1643793/are-linq-to-sql-objects-serializable-for-session-state) –

回答

0

的最佳方式是落實科學分部類ISerializable接口...

相關問題