C# 以格式化的可读样式显示日期差异

C# 以格式化的可读样式显示日期差异,c#,javascript,jquery,asp.net-mvc-4,razor,C#,Javascript,Jquery,Asp.net Mvc 4,Razor,我必须以“1年3个月”等格式显示两个日期的差异。我已经将一个模型绑定到视图,它正在返回日期。如何获得日期差异并在上面的视图中显示?我应该使用jquery还是razor语法?最好的方法是什么。(扣除日期是固定的) 以下是我的视图代码: <td> <div> @Html.DisplayFor(modelItem => item.hire_date) </div> </td> @DisplayFor(mod

我必须以“1年3个月”等格式显示两个日期的差异。我已经将一个模型绑定到视图,它正在返回日期。如何获得日期差异并在上面的视图中显示?我应该使用jquery还是razor语法?最好的方法是什么。(扣除日期是固定的)

以下是我的视图代码:

<td>
    <div>  
       @Html.DisplayFor(modelItem => item.hire_date) 
    </div> 
</td>

@DisplayFor(modelItem=>item.hire\u日期)

有几个库可能有助于进行这种格式设置

或者你也可以自己滚

由于您仅将其用于显示,因此我将坚持使用服务器端的Razor语法。 但是,如果您需要在客户端使用日期来做其他事情,并且您已经在使用JQuery,那么使用MomentJs之类的东西可能是值得的。

就像所有关于软件问题的伟大答案一样:-这取决于:)

Humanizer是一个对此类任务非常有用的库:

在服务层进行了计算,并修改了模型,然后将其传递给view

+1伟大的发现。我将把这一点添加到我有用的图书馆列表中:)我不能拿任何学分,我没有写图书馆。谢谢你在评论中给予我支持和信任。我喜欢编写一个小的javascript代码,而不是使用库。这种方法更难,我只是在通过它之前修改了模型。我认为这比这更容易谢谢你的帮助