セッション内に保存したいXMLドキュメントが1つあるため、ポストバックごとに物理パスから再度ロードする必要はありません。ステートサーバーを使用しています。
セッションに保存しようとすると、エラーが発生します。
例外の詳細: System.Runtime.Serialization.SerializationException: Type 'System.Xml.XmlDocument' in Assembly 'System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' はシリアル化可能としてマークされていません。
私のコードは次のようなものです:
string resumeSection = string.Empty;
resumeSection = resume.GetXMLSection(1)
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(resumeSection);
Session["USERXML"] = xmloc;
シリアライゼーションを行うには?
エラーの下にある ため、セッション状態をシリアル化できません。'StateServer' および 'SQLServer' モードでは、ASP.NET はセッション状態オブジェクトをシリアル化するため、シリアル化できないオブジェクトまたは MarshalByRef オブジェクトは許可されません。「カスタム」モードのカスタム セッション状態ストアによって同様のシリアル化が行われる場合、同じ制限が適用されます。