龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > asp.net编程 >

Asp.Net缓存代码超时后会引起未将对象引用设置到对象的实例

时间:2009-12-21 11:47来源:未知 作者:admin 点击:
分享到:
原来的代码: if (cache.Contains(ADMINUAMENUINFO_CHACE_DATA)) { ds = cache.GetDataDataSet(ADMINUAMENUINFO_CHACE_DATA); } else { ds = SysDAL.GetAdminUAMenuInfo(); if (ds != null) { cache.Add(ADMINUAMENUINFO_CHACE_DATA, ds, policy); } } 以

原来的代码:

if (cache.Contains(ADMINUAMENUINFO_CHACE_DATA))
{
    ds = cache.GetData<DataSet>(ADMINUAMENUINFO_CHACE_DATA);
}
else
{
    ds = SysDAL.GetAdminUAMenuInfo();

    if (ds != null)
    {
        cache.Add(ADMINUAMENUINFO_CHACE_DATA, ds, policy);
    }
}

以下代码会引起引起未将对象引用设置到对象的实例,以下是修改方案:

ds = cache.GetData<DataSet>(ADMINUAMENUINFO_CHACE_DATA);

if (ds == null)
{
    ds = SysDAL.GetAdminUAMenuInfo();

    if (ds != null)
    {
        cache.Add(ADMINUAMENUINFO_CHACE_DATA, ds, policy);
    }
}

精彩图集

赞助商链接