0

我正在开发 MVC 应用程序并使用剃刀语法。

在这个应用程序中,我提供评论功能。

目前评论看起来像......

P Moris9/15/2012 5:40:44 PM
Test comment 1 


P Moris9/15/2012 5:40:44 PM
Test comment 2 


P moris9/15/2012 5:40:45 PM
Test comment 3

现在,我想在评论所有者的姓名和日期时间之间放置空格。以及如何将 dateTime 转换为

dd-MMM-yy hh:mm tt ?

评论应该看起来像......

P Moris 2012 年 9 月 17 日下午 5:45。

测试评论 1

(我不能在上面的示例中给出一个以上的空间......它会自动删除空间。)

我该怎么办?

我在视图中的代码是

 @foreach (var item in Model)
    {
        <div id="OwnerName">
    
         <span class="EmpName"> @Html.ActionLink(item.Owner.FullName, "Details", "EMployee", new { id = item.OwnerId }, new { @style = "color:#1A6690;" })</span>
         
           @Html.DisplayFor(ModelItem => item.CommentDateTime)
         
        </div>
                       
     
        
        <p class="CommentP">
           @Html.DisplayFor(ModelItem => item.CommentText)
        </p>
        
        <br />
        

    }
4

2 回答 2

4

您可以&nbsp;在评论作者姓名和创建日期之间添加一个:

<div id="OwnerName">
    <span class="EmpName">
        @Html.ActionLink(item.Owner.FullName, "Details", "EMployee", new { id = item.OwnerId }, new { @style = "color:#1A6690;" })
   </span>
   &nbsp;
   @Html.DisplayFor(ModelItem => item.CommentDateTime)
</div>

为了格式化评论日期,您可以使用属性装饰您的视图模型[DisplayFormat]属性:

[DisplayFormat(DataFormatString = "{0:dd MMM yyyy hh:mm tt}")]
public DateTime CommentDateTime { get; set; }

如果由于某种原因您没有使用视图模型并且无法修改您的实体,您可以在视图中对其进行格式化:

<div id="OwnerName">
    <span class="EmpName">
        @Html.ActionLink(item.Owner.FullName, "Details", "EMployee", new { id = item.OwnerId }, new { @style = "color:#1A6690;" })
   </span>
   &nbsp;
   @Model.CommentDateTime.ToString("dd MMM yyyy hh:mm tt")
</div>

另一种可能性是编写自定义显示模板 ( ~/Views/Shared/DisplayTemplates/CommentDate.cshtml):

@model DateTime
@Model.ToString("dd MMM yyyy hh:mm tt")

然后将自定义显示模板名称传递给DisplayFor助手:

@Html.DisplayFor(ModelItem => item.CommentDateTime, "CommentDate")
于 2012-09-17T06:31:57.863 回答
0

对于空白使用下面的代码

@{
  @:  &nbsp;&nbsp;
}
于 2017-03-29T04:37:35.520 回答