【问题标题】:Change Date format in ASCX file更改 ASCX 文件中的日期格式
【发布时间】:2014-03-24 10:51:42
【问题描述】:

我有一个自定义列表对象,我将它绑定到这样的转发器

<asp:Repeater runat="server" ID="Repeater1">
<ItemTemplate>
    <p><input type="text" class="datepicker2" name="txtEndDate" value="<%#Eval(" EndDate").ToString().Replace("T00:00:00", "") %>" /></p>
</ItemTemplate>

注意:中继器数据绑定在后端正确完成。 现在来自后端的日期是这种格式2012-01-01,我希望转发器以2012/01/01这种格式显示它。有什么方法可以实现吗?

【问题讨论】:

    标签: c# asp.net datetime


    【解决方案1】:

    尝试使用.ToString("yyyy/MM/dd") 试试这个代码希望它会有所帮助。

    <asp:Repeater runat="server" ID="Repeater1">
    <ItemTemplate>
     <p><input type="text" class="datepicker2" name="txtEndDate" value="<%#(Convert.ToDateTime((Eval("EndDate"))).ToString(yyyy/MM/dd,CultureInfo.InvariantCulture) %>" /></p>
    </ItemTemplate>
    

    【讨论】:

    • 错误:方法 'ToString' 没有重载需要 1 个参数
    • 您需要先将其转换为 DateTime:
    • Remove() 现在不需要了,因为你只会得到Date 这种格式的yyyy/MM/dd
    • 您当前的代码可以工作,除了日期格式没有改变,它仍然是 2012-01-01
    • 我认为您的Culturevarient 与众不同。请使用这个ToString(yyyy/MM/dd,CultureInfo.InvariantCulture)
    【解决方案2】:

    您必须将其转换为日期时间,然后应用以下日期格式的字符串

    <asp:Repeater runat="server" ID="Repeater1">
    <ItemTemplate>
         <p><input type="text" class="datepicker2" name="txtEndDate" value="<%#Convert.ToDateTime(Eval("EndDate")).ToString("yyyy/MM/dd") %>" /></p>
    </ItemTemplate>
    </asp:Repeater>
    

    【讨论】:

      猜你喜欢
      • 2019-04-09
      • 2018-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-13
      • 1970-01-01
      • 2014-01-09
      • 1970-01-01
      相关资源
      最近更新 更多