页面.会话未设置为实例
本文关键字:实例 设置 会话 页面 | 更新日期: 2023-09-27 17:50:15
我很难理解Page.Request.QueryString
和Page.Session
是如何工作的。如何将name
分配给string
protected override void Render(HtmlTextWriter output)
{
SqlConnection sqlConnection = new SqlConnection(connectionString);
SqlCommand sqlCommand = new SqlCommand();
StringBuilder stringBuilder1 = new StringBuilder();
StringBuilder stringBuilder2 = new StringBuilder();
sqlCommand.Connection = sqlConnection;
sqlCommand.CommandType = CommandType.StoredProcedure;
sqlCommand.CommandText = "proc_UserBids";
sqlCommand.CommandTimeout = 1000;
string str = this.Page.Request.QueryString["name"] == null ? this.Page.Session["name"].ToString() : ((object)this.Page.Request.QueryString["name"]).ToString();
if (!(str == ""))
{
//Do Something
}
}
得到的错误是:
Exception Details: System。NullReferenceException:对象引用没有设置为对象的实例。
string str = this.Page.Request.QueryString["name"] == null ? this.Page.Session["name"].ToString() : ((object)this.Page.Request.QueryString["name"]).ToString();
您必须为session
设置一些值,称为name
。
示例(vb.net):
Session.Add("name","some string")
那么你可以在任何页面使用这个Session("name")
。
例如在其他页面:Dim str As String = Session("name")
如果你想用QueryString
传递一些值,从一个页面到另一个页面,然后使用下面的代码。例子:deafult.aspx
Response.Redirect("otherpage.aspx?name=Some string")
otherpage。Aspx(后台代码):
Request.QueryString("name")
我希望这就是你需要的。