我已经设置了一个cookie,我想用它来填充表单,以便用户不需要填写相同的表单(它向别墅的所有者提交查询)。关于cookie的IF语句 - WebMatrix/Razor
如果cookie已设置,我已经可以正常工作,但如果没有设置cookie,则会出错。
我猜我需要使用“if”语句,但不太清楚如何编写代码。
下面是设置cookie的代码...
Response.Cookies["BookingEnquiry"]["ReqName"] = Request["BookingReqName"];
Response.Cookies["BookingEnquiry"]["ReqEmail"] = Request["BookingReqEmail"];
Response.Cookies["BookingEnquiry"]["ReqPhone"] = Request["BookingReqPhone"];
Response.Cookies["BookingEnquiry"]["NumAdults"] = Request["BookingNumAdults"];
Response.Cookies["BookingEnquiry"]["NumChildren"] = Request["BookingNumChildren"];
Response.Cookies["BookingEnquiry"]["ReqMessage"] = Request["BookingReqMessage"];
Response.Cookies["BookingEnquiry"].Expires = DateTime.Now.AddHours(4);
}
这里是从cookie收集信息的变量...
var reqname = Request.Cookies["BookingEnquiry"]["ReqName"];
var reqemail = Request.Cookies["BookingEnquiry"]["ReqEmail"];
var reqphone = Request.Cookies["BookingEnquiry"]["ReqPhone"];
var numadults = Request.Cookies["BookingEnquiry"]["NumAdults"];
var numchildren = Request.Cookies["BookingEnquiry"]["NumChildren"];
var reqmessage = Request.Cookies["BookingEnquiry"]["ReqMessage"];
,这里是从一个样本输入形式...
<label>Name</label>
<input type="text" name="BookingReqName" id="BookingReqName" placeholder="full name…" value="@reqname">
任何帮助将不胜感激。
谢谢,加文
这里是我得到的错误。它的意思是“var reqname = Request.Cookies [”BookingEnquiry“] [”ReqName“]; - 未设置对象引用 – Gavin5511 2013-03-19 14:56:17
Daniel,代码的”else“部分是什么样子? – Gavin5511 2013-03-19 15:21:12
当您检查变量Request.Cookies [“BookingEnquiry”]为null并返回时,如果它为空,则没有别的,您只需在本节下面继续使用正常代码。 (如果它为空,那么您将跳过出现错误的代码部分) - 请参阅编辑。 – 2013-03-19 21:54:15