ASP.NET MVC格式化日期

 更新时间:2022年07月31日 10:01:53   作者:Darren Ji  
这篇文章介绍了ASP.NET MVC格式化日期的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

假设有这样的一个类,包含DateTime类型属性,在编辑的时候,如何使JoinTime显示成我们期望的格式呢?

using System;
using System.ComponentModel.DataAnnotations;

namespace MvcApplication1.Models
{
    public class Employee
    {
        public DateTime? JoinTime { get; set; }
    }
}

在HomeController中:

using System;
using System.Web.Mvc;
using MvcApplication1.Models;

namespace MvcApplication1.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            return View(new Employee(){JoinTime = DateTime.Now});
        }

    }
}

在Home/Index.cshtml强类型视图中:

@model MvcApplication1.Models.Employee

@{
    ViewBag.Title = "Index";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<h2>Index</h2>

@Html.EditorFor(model => model.JoinTime)

 方式1:通过编码

在Views/Shared/EditorTemplates下创建DateTime.cshtml强类型部分视图,通过ToString()格式化:

@model DateTime?
@Html.TextBox("", Model.HasValue ? Model.Value.ToString("yyyy-MM-dd") : "", new {@class = "date"})

方式2:通过ViewData.TemplateInfo.FormattedModelValue

当我们把 [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}"...]属性打在DateTime类型属性上的时候,我们可以在视图页通过ViewData.TemplateInfo.FormattedModelValue获取该类型属性格式化的显示。

using System;
using System.ComponentModel.DataAnnotations;

namespace MvcApplication1.Models
{
    public class Employee
    {
        [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
        public DateTime? JoinTime { get; set; }
    }
}

在Views/Shared/EditorTemplates下创建DateTime.cshtml强类型部分视图,通过ViewData.TemplateInfo.FormattedModelValue格式化日期类型的属性。

@model DateTime?
@Html.TextBox("", Model.HasValue ? @ViewData.TemplateInfo.FormattedModelValue : "", new {@class="date"})

到此这篇关于ASP.NET MVC格式化日期的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • VS2017做为Unity3D的脚本编辑器需要的最精简组件

    VS2017做为Unity3D的脚本编辑器需要的最精简组件

    这篇文章主要为大家详细介绍了VS2017做为Unity3D的脚本编辑器需要的最精简组件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • ASP.NET 2.0 URL映射技巧

    ASP.NET 2.0 URL映射技巧

    ASP.NET 2.0 URL映射技巧...
    2007-01-01
  • ASP.NET中ServerPush用法实例分析

    ASP.NET中ServerPush用法实例分析

    这篇文章主要介绍了ASP.NET中ServerPush用法,实例分析了通过ServerPush实现服务器推送功能,需要的朋友可以参考下
    2015-06-06
  • .Net MinimalApis响应返回值的详细过程

    .Net MinimalApis响应返回值的详细过程

    本文主要讲 MinimalApis 中的使用自定义IResultModel和系统自带IResult做响应返回值,结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-03-03
  • ASP.NET的广告控件AdRotator用法分析

    ASP.NET的广告控件AdRotator用法分析

    这篇文章主要介绍了ASP.NET的广告控件AdRotator用法,较为详细的分析了广告控件AdRotator的功能、使用方法与相关注意事项,需要的朋友可以参考下
    2016-05-05
  • Grid或者DataTable中数据导出为Excel原来这么简单

    Grid或者DataTable中数据导出为Excel原来这么简单

    以前一直认为,将Grid 或者DataTable中的数据导出到Excel功能实现会非常复杂,可能会想用什么类库什么的或者实在太难就用csv算了,没想到真的很简单,需要了解的朋友可以参考下
    2012-12-12
  • 使用Hangfire+.NET 6实现定时任务管理(推荐)

    使用Hangfire+.NET 6实现定时任务管理(推荐)

    这篇文章主要介绍了使用Hangfire+.NET 6实现定时任务管理,通过引入Hangfire相关的Nuget包并对Hangfire进行服务配置,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-10-10
  • asp.net 使用Response.Filter 过滤非法词汇

    asp.net 使用Response.Filter 过滤非法词汇

    一般信息发布网站,论坛等均具有实现非法词汇过滤功能,即当用户录入非法词汇时,进行替换,使其无法显示到页面上,针对此种功能,通常采用的时,在读取时,在读到非法词汇后,进行替换。
    2010-03-03
  • C#.NET发送邮件的实例代码

    C#.NET发送邮件的实例代码

    这篇文章介绍了C#.NET发送邮件的实例代码,有需要的朋友可以参考一下,希望对你有所帮助
    2013-07-07
  • Asp.net mvc实时生成缩率图到硬盘

    Asp.net mvc实时生成缩率图到硬盘

    这篇文章主要介绍了Asp.net mvc实时生成缩率图到硬盘的相关资料,需要的朋友可以参考下
    2016-05-05

最新评论