2012-06-23 63 views
0

我在asp.net我想在這裏創建Web Matrix的一個cookie一個新手是我的代碼餅乾在asp.net錯誤

<% 
     Response.Cookies("ssn") = StudentNumber 
     Response.Cookies("ssn").Expires = Date + 365 
%> 

它顯示了在「%」的錯誤這是爲什麼? 錯誤消息是

未知元素'%'或元素不能放在這裏。

謝謝

+0

damith的答案是工作,如果你有.cshtml格式(從您的意見考慮),但你做錯了,如果你寫在.cshtml文件這個ASPX代碼。 – Adrian

+0

請用完整的錯誤文字更新您的問題。 –

回答

0

而不是響應,你可以嘗試HttpContext.Current.Response

<% 
     HttpContext.Current.Response.Cookies("ssn") = StudentNumber 
     HttpContext.Current.Response.Cookies("ssn").Expires = Date + 365 
%> 

編輯

@{ 
    Response.Cookies["ssn"].Value = StudentNumber; 
    Response.Cookies["ssn"].Expires = DateTime.Now.AddDays(365); 
} 
+0

仍然無法解決「%」中的問題 –

+0

您是否在aspx文件中使用此代碼? –

+0

不在.cshtml文件中 –

0

Cookie.Expires是DateTime,我不認爲有任何生成DateTime的內置「+」操作。

您可能想要= Date.AddDays(365)(假設日期類型爲DateTime)。

或者使用"+" that takes TimeSpan

Response.Cookies("ssn").Expires = Date + TimeSpan.FromDays(365); 
+0

他們的任何區別是在響應和您的代碼中添加一個cookie。 – Adrian

0
@{ 
     Response.Cookies("ssn") = StudentNumber; 
     Response.Cookies("ssn").Expires =DateTime.Now; 
} 
+0

現在錯誤在「@」 –