我很难在第二,第三,第四等位置获取getCookie的更新值。在更改txtPrice或ddTaxRate的值时,我遇到了困难。在我第一次执行计算时,它可以正常工作,但是如果我更改txtPrice或ddTaxRate的值,则需要两次单击计算按钮才能获取getCookie的更新值。
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//First time the page loads
}
else
{
HttpCookie myCookie = new HttpCookie("data");
myCookie.Expires = DateTime.Now.AddHours(12);
//Grab data
myCookie.Values.Add("price", txtPrice.Text);
myCookie.Values.Add("tax", ddTaxRate.SelectedItem.Value.ToString());
Response.Cookies.Add(myCookie);
calculate();
}
}
protected void cmdCalculate_Click(object sender, EventArgs e)
{
}
protected void calculate()
{
if (Request.Cookies["data"] != null)
{
HttpCookie getCookie = Request.Cookies["data"];
double price = Convert.ToDouble(getCookie.Values["price"]);
double taxRate = (Convert.ToDouble(getCookie.Values["tax"]));
double rate = taxRate / 100;
double total = (price + (price * rate));
txtNetPrice.Text = Convert.ToString(total);
}
}
}
我已经看到getCookie在调试方面的价值落后。想知道是否有人知道如何获取getCookie的最新值?
最佳答案
Request.Cookies
包含在请求中发送的cookie。
当您向响应中添加Cookie时,它不会显示在Request.Cookies
中。