如何将变量传递给另一个命名空间?

时间:2015-03-09 04:06:40

标签: c# asp.net sql-server

我必须在此处将计数值传递给另一个namespace。我有2个课程Select.csValue.csSelect.cs具有以下代码:

    public bool Login(string UserName, string Password)
    {
        string strinvselect = string.Format("select * from newlog where
                              pass='{0}'", Password);

        DataTable dtlog = ExecuteStatement(strinvselect);

        if (dtlog.Rows.Count == 1)
        {
            string strvalue = string.Format("Select * FROM login WHERE uid= 
                                           '{0}'", UserName);

            DataTable newlogin = ExecuteStatement(strvalue);

            try
            {
                if (newlogin.Rows.Count == 1)
                {
                    loginStatus = true;
                }
            }
            catch (Exception ex)
            {
                loginStatus = false;
            }

            return loginStatus;
        }
    }

我必须创建一个计数值if(newlogin.Rows.Count == 1)count=1,并且Value.cs中应该可以使用此值来检查功能。 在Value.cs中调用函数getdetails()。在这里,我需要检查

        if (count == 1)
        {
            getdetails();
        }
        else
        {
            // call another function
        }        

2 个答案:

答案 0 :(得分:0)

我找到了答案:

命名空间在这里并不重要,问题是你需要从不同的类访问变量。您拥有特定于用户的“全局”变量的方式是Session,因此将值存储在Session变量中,让其他类访问Session变量。

HttpContext.Current.Session["myData"] = "somevalue";

价值功能

string x;

if (Session["myData"] == null)
{
   // handle the data not being set
}
else
{
   x = (string)HttpContext.Current.Session["myData"].ToString(); ;
}

答案 1 :(得分:-1)

您可以检查登录外的计数查询(基本上在您需要的地方),然后将其作为“用户名+计数”(您需要将其拆分)传递给登录第一个参数,因为您可以避免再次检查登录内的计数。