在一个方法中,我将一个结构存储到 HttpSession 中:
HttpContext.Current.Session["search_headers"] = ra;
其中 ra 是我的“replySearchAjax”类型的自定义结构。
在属于同一名称空间的网络方法中,我正在尝试执行以下操作:
[WebMethod(EnableSession = true)]
public replySearchAjax RestorePhenSearchTable()
{
if (HttpContext.Current.Session["search_headers"] != null)
{
replySearchAjax aa = (replySearchAjax) HttpContext.Current.Session["search_headers"];
return aa;
}
但是类型转换的行返回
{"Message":"Specified cast is not valid."
"ExceptionType":"System.InvalidCastException"}
在产生异常的行的断点处检查会话变量表明其中包含有效的replySearchAjax 字段。
我将如何使它工作?提前致谢!