如果我的页面中有html控件。
<input type="text" id="dateFrom" runat="server" ClientIDMode="Static"/>
点击按钮,我将输入dateFrom
的值保存到Sitecore项目的字段中,类型为&#34; DateTime
&#34;
CodeBehind:
item["Visible From"] = dateFrom.Value;
当用户点击输入dateFrom
$(function () {
$("#dateFrom").datepicker();
});
保存项目后,我在&#34;内容编辑器&#34;中看到的结果是:
正确的日期是一些如何不保存。我也试过<asp:TextBox
而不是<input type="text"
但仍然是相同的结果。
答案 0 :(得分:10)
日期以ISO 8601格式存储在后端,使用Sitecore帮助程序方法将其格式化为正确的格式:
var dateTime = DateTime.Parse(dateFrom.Value);
var isoDate = DateUtil.ToIsoDate(dateTime);
item["Visible From"] = isoDate ;
您可以在本文中找到有关Using DateTime And Date Fields In Sitecore
的更多信息答案 1 :(得分:0)
日期以自己的(基于字符串的)格式存储在Sitecore中。如果您选中查看 - &gt;,您可以检查一下上面的菜单中的Raw Vales 。
Sitecore有自己的助手类,名为DateUtil,用于处理日期和时间。
string storedDateTimeValue = DateUtil.DateTimeToIsoDate(DateTime.Now);
或反向操作:
DateTime dt = DateUtil.IsoDateToDateTime(storedDateTimeValue);
Here is有点过时,但有关该DateUtil类API的正确信息。