关于:“无法序列化会话状态在“StateServer”或“SQLServer”模式下,ASP.NET 将序列化会话状态对象,因此不允许使用无法序列化的对象或 MarshalByRef 对象如果自定义会话状态存储在“Custom”模式下执行了类似的序列化

错误描述:

无法序列化会话状态。在“StateServer”或“sqlServer”模式下,ASP.NET 将序列化会话状态对象,因此不允许使用无法序列化的对象或 MarshalByRef 对象。如果自定义会话状态存储在“Custom”模式下执行了类似的序列化,则适用同样的限制。

问题描述:

        我使用了struct 结构体型Bill,并把多个struct 型Bill放到一个ArrayList类型的array变量中,试图将array赋值给Session,在另一个页面中读取Session,系统报错!!!

 

解决办法:

        在网上查找问题后,得出的结论为我定义的变量不能被序列化,于是试着在Bill上添加 [Serializable]。例如:

[Serializable]
public struct Bill
{
    public string Name;
    public string Unit;
    public string Count;
}

        问题解决!!!

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...