我有一种情况,我分配一些会话的价值。我有一种情况是代码重复调用。此代码有时会抛出对象null的错误。我没有得到为什么发生这种情况,而我将值分配给it.My代码如何解决对象空错误?
if (HttpContext.Current.Cache["Cache"] == null)
{
CreateChanhe();
DataTable dtcache= HttpContext.Current.Cache["HNS Connection"] as DataTable; //CreateConnectString(CCMMUtility.Encryptdata(txtPin.Text));
string sqlFilter = "Sp = '" + classses.DecryptString(HttpContext.Current.Request.Cookies["Cookies"].Values["sp"].ToString(), classses.SP) + "'";
DataRow[] dr = dtcache.Select(sqlFilter);
if (dr.Length > 0)
{
String[] Con = new String[2];
Con[0] = dr[0][0].ToString();
Con[1] = dr[0][1].ToString();
sp= Con[1];
HttpContext.Current.Session["Name"] = dr[0][2].ToString();
}
}
当我尝试做“添加监视”,而其调试说,“价值”有一定价值,但HttpContext.Current.Session [“Name”]为空。有人可以让我知道为什么会发生这种情况。
其实我正在创建一个缓存,然后从该缓存中填充会话。这是基于我的要求。
此代码行似乎对我来说,我想应该有一些其他代码行导致此错误。你应该详细说明。 – yogi
嗨, 当您尚未分配任何会话变量值时,您可能正在检查HttpContext.Current.Session [“Name”]值。 可能请发布您的代码,以便我可以分析更多。 –
我已编辑了该代码请审查。 – Visions