我已经实现了会话状态模式sqlserver,当我运行我的应用程序时,我面临着哈希表的XML序列化错误.我的班级看起来像:
[Serializable]
public class ProjectSetup{
private System.Collections.Hashtable _ConfigTable;
//and other properties here
public System.Collections.Hashtable ConfigTable
{
get { return _ConfigTable; }
}
}
Run Code Online (Sandbox Code Playgroud)
现在我想知道如何序列化hastable或如果有另一种选择请告诉我.
并且确切的错误是:"无法序列化System.Collections.Hashtable类型的成员ProjectSetup.ConfigTable,因为它实现了IDictionary"
我在使用c#进行序列化和反序列化时遇到了问题.基本上我使用DataContractSerializer来序列化对象.
这是我的序列化代码:
var serializer = new DataContractSerializer(typeof(ProjectSetup));
string xmlString;
using (var sw = new StringWriter())
{
using (var writer = new XmlTextWriter(sw))
{
writer.Formatting = Formatting.Indented;
serializer.WriteObject(writer, DALProjectSetup);
writer.Flush();
xmlString = sw.ToString();
}
}
System.Web.HttpContext.Current.Session["ProjectSetup"] = xmlString;
Run Code Online (Sandbox Code Playgroud)
这工作正常,但现在我需要有关如何反序列化上述内容的帮助.