C# 变量传递空值
我已尝试设置会话值,但每次我想显示用户在上一页中输入的文本时,它都返回null 我有三页订户详细信息、套餐选择和银行详细信息,所有三页都互相跟随,用户已将其所需信息填入所有页面,然后单击“下一步”,它们将被定向到一个页面,在该页面上显示他们输入的所有信息 我似乎不太明白我做错了什么 SubscriberDetails.aspxC# 变量传递空值,c#,asp.net,visual-studio,session,C#,Asp.net,Visual Studio,Session,我已尝试设置会话值,但每次我想显示用户在上一页中输入的文本时,它都返回null 我有三页订户详细信息、套餐选择和银行详细信息,所有三页都互相跟随,用户已将其所需信息填入所有页面,然后单击“下一步”,它们将被定向到一个页面,在该页面上显示他们输入的所有信息 我似乎不太明白我做错了什么 SubscriberDetails.aspx protected void Button1_Click(object sender, EventArgs e) { string FullName = txtF
protected void Button1_Click(object sender, EventArgs e)
{
string FullName = txtFullName.Text;
string CompanyName = txtCompanyName.Text;
string Vat = txtVAT.Text;
string ContactNumber = txtContactNumber.Text;
string Fax = txtFax.Text;
string District = txtDistrict.Text;
string Street = txtStreet.Text;
string City = txtCity.Text;
string Code = txtPostal.Text;
string Trading = txtTrading.Text;
string Id = txtID.Text;
string ContactPerson = txtContactPerson.Text;
string Email = txtEmail.Text;
Session["FullName"] = FullName;
Session["CompanyName"] = CompanyName;
Session["VAT"] = Vat;
Session["ContactNumber"] = ContactNumber;
Session["Fax"] = Fax;
Session["District"] = District;
Session["City"] = City;
Session["Street"] = Street;
Session["Code"] = Code;
Session["Trading"] = Trading;
Session["ID"] = txtID.Text;
Session["ContactPerson"] = ContactPerson;
Session["Email"] = Email;
}
Final.aspx
protected void Page_Load(object sender, EventArgs e)
{
if (string.IsNullOrEmpty((string)Session["Fullname"]))
{
lblFullName.Text = "N/A";
}
else
{
lblFullName.Text = Session["FullName"].ToString();
}
if (string.IsNullOrEmpty((string)Session["CompanyName"]))
{
lblCompanyName.Text = "N/A";
}
else
{
lblCompanyName.Text = Session["CompanyName"].ToString();
}
if (string.IsNullOrEmpty((string)Session["VAT"]))
{
lblVat.Text = "N/A";
}
else
{
lblVat.Text = Session["VAT"].ToString();
}
if (string.IsNullOrEmpty((string)Session["ContactNumber"]))
{
lblContactNumber.Text = "N/A";
}
else
{
lblContactNumber.Text = Session["ContactNumber"].ToString();
}
if (string.IsNullOrEmpty((string)Session["Fax"]))
{
lblFax.Text = "N/A";
}
else
{
lblFax.Text = Session["Fax"].ToString();
}
if (string.IsNullOrEmpty((string)Session["District"]))
{
lblDistrict.Text = "N/A";
}
else
{
lblDistrict.Text = Session["District"].ToString();
}
if (string.IsNullOrEmpty((string)Session["Street"]))
{
lblStreet.Text = "N/A";
}
else
{
lblStreet.Text = Session["Street"].ToString();
}
if (string.IsNullOrEmpty((string)Session["City"]))
{
lblCity.Text = "N/A";
}
else
{
lblCity.Text = Session["City"].ToString();
}
if (string.IsNullOrEmpty((string)Session["Code"]))
{
lblCode.Text = "N/A";
}
else
{
lblCode.Text = Session["Code"].ToString();
}
if (string.IsNullOrEmpty((string)Session["Trading"]))
{
lblTrading.Text = "N/A";
}
else
{
lblTrading.Text = Session["Trading"].ToString();
}
if (string.IsNullOrEmpty((string)Session["ID"]))
{
lblID.Text = "N/A";
}
else
{
lblID.Text = Session["ID"].ToString();
}
if (string.IsNullOrEmpty((string)Session["ContactPerson"]))
{
lblContactPerson.Text = "N/A";
}
else
{
lblContactPerson.Text = Session["ContactPerson"].ToString();
}
if (string.IsNullOrEmpty((string)Session["Email"]))
{
lblMail.Text = "N/A";
}
else
{
lblMail.Text = Session["Email"].ToString();
}
}
你没有太多的选择,如果发生了这种情况,你的会话会有问题。也许其他每一个请求都在启动一个新会话,请检查以确保它没有发生 检查:
Session.SessionID;
我看到一段代码使用
TextBox
控件,下面一段代码使用Label
控件
也许你读错了,是吗
仅供参考:如果我们填写“N/A”之类的值,我们会在网站上收到客户投诉。大多数人似乎更喜欢看到空白空间,这也会简化你的代码:
lblVariable.Text = string.Format("{0}", Session["Variable"]);
显然,变量需要随会话和控件变量名而更改。是
string FullName=txtFullName.Text
返回null,或者会话[“Fullname”]
返回null?不是答案,但可能需要查看。这将简化您的代码,您可以使用类似于lblContactPerson.Text=string.IsNullOrEmpty((string)会话[“ContactPerson”])的内容?“不适用”:会话[“联系人”]。ToString()代码>这样就不会有if语句的页面。