如何以不久前的格式显示日期

本文关键字:格式 显示 日期 不久前 | 更新日期: 2023-09-27 18:14:47

我使用razor将日期绑定到标签,如下所示。

<h4>@updates.UpdatedDate</h4>

这将以以下方式显示日期:

10/1/2016 8:30:02 AM

但是,我需要将日期显示为

12 days ago

Moments ago格式。我知道我们可以使用moment.js。但是我要在

如何以不久前的格式显示日期

值上调用javascript函数吗?

您有几种方法可以在MVC方式(服务器端)中做到这一点,而不是尝试调用JavaScript函数(客户端):

选项1:向模型/视图模型添加一个属性,为您完成转换:

public HtmlString MomentDate
{
    get
    {
        string convertedDate = // Write your UpdatedDate conversion logic here.
        return new HtmlString(convertedDate);
    }
}

选项2编写自定义HtmlHelper扩展

public static class HtmlHelperExtensions
{
    public static HtmlString MomentDateFormat(this HtmlHelper helper, DateTime value)
    {
        string convertedDate = // Write your UpdatedDate conversion logic here.
        return new HtmlString(convertedDate);
    }
}

然后在razor视图中调用它:

<h4>@Html.MomentDateFormat(updates.UpdatedDate)</h4>

我通常会选择选项2,但我将讨论为什么的语义