项目中会经常遇到使用session来进行数据保存的情况
下面是在统一程序集下会用到的一些方法:
将mod存入随机构造session中、从session中读取mod、更新session内容
internal class SessionControl
{
internal static String SetTourOrderSessionKey(TourOrder tourOrder)
{
if (tourOrder == null) return null;
var key = Guid.NewGuid().ToString();
HttpContext.Current.Session.Add(key, tourOrder);
return key;
}
internal static TourOrder GetTourOrderBySessionKey(String key)
{
if (String.IsNullOrEmpty(key)) return null;
var tourOrder = HttpContext.Current.Session[key] as TourOrder;
return tourOrder;
}
internal static void ResetTourOrderSessionKey(TourOrder tourOrder, String key)
{
if (tourOrder == null) return;
if (String.IsNullOrEmpty(key)) return;
HttpContext.Current.Session[key] = tourOrder;
}
}
js中session操作 有时候会遇见一个 按钮点击过后的 状态保留着 到别的页面在用
// 保存数据到sessionStorage
sessionStorage.setItem('key', 'value');
// 从sessionStorage获取数据
var data = sessionStorage.getItem('key');
// 从sessionStorage删除保存的数据
sessionStorage.removeItem('key');
// 从sessionStorage删除所有保存的数据
sessionStorage.clear();
比如 一个页面 点击按钮 显示或隐藏一部分共用内容,点击后 在别的页面中 这共用部分也相应的显示或隐藏
也就是说我一个页面 将公共部分进行 隐藏后 别的页面中的公共部分也会进行隐藏
那么做法就是将点击按钮 后的 状态保存在session 中,然后加载公共部分去看 session中存的是否要显示
JS方法
function HideDetail() {
if ($("#HideDetail").is(':hidden')) {
$("#HideDetail").show();
sessionStorage.setItem('hideordispaly', 'dispaly');
}
else {
$("#HideDetail").hide();
sessionStorage.setItem('hideordispaly', 'hide');
}
}
$(document).ready(function () {
var data = sessionStorage.getItem('hideordispaly');
if (data == "hide") {
$("#HideDetail").hide();
}
else {
$("#HideDetail").show();
}
}