N2CMS使用<n2:display>标签</n2:display>格式化日期属性

时间:2011-03-17 17:07:58

标签: n2 n2cms

我有一个EditableDate属性,并在带有&lt; n2:Display>标记的WebForms页面中显示它。默认输出类似于 7/02/2011 12:00:00 AM 但是我想格式化日期,例如 2011年2月7日。已尝试过<n2:Display Format="{0:d MMM yyyy}">,但这只是输出 {0:d MMM yyyy}

2 个答案:

答案 0 :(得分:0)

不确定:你可能只需要格式化部分吗?

<n2:Display Format="d MMM yyyy">

答案 1 :(得分:0)

在您的ContentItem中,添加一个新属性,如“XDateString”,如下所示:

...
[EditableDate("Date", 50, ContainerName = Tabs.Content)]
public virtual DateTime? EventDate
{
      get { return (DateTime?)GetDetail("EventDate"); }
      set { SetDetail("EventDate", value); }
}

public virtual string EventDateString
{
     get
     {
         if (!EventDate.HasValue) return string.Empty;

         //Format here your Date
         return (EventDate.Value.ToString("d") + " " +
                 EventDate.Value.ToString("MMMM") + " " +
                 EventDate.Value.ToString("yyyy") 
                );
     }
}
...

然后在设计页面中添加:

<n2:Display runat="server" PropertyName="EventDateString"/>