我已經設置了一個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