日期格式dd / MM / yyyy在asp.net mvc 5中不起作用

比拉勒·艾哈迈德(Bilal Ahmed)

我正在开发一个asp.net mvc 5应用程序,在其中尝试设置dd / MM / yyyy格式的验证,我一直在努力寻找合适的解决方案,但没有成功,我想要什么接受:

24/01/2016

但它将验证消息显示为:

字段JoiningDate必须是日期。

这是我尝试过的:

[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime JoiningDate { get; set; }

另外,我希望它以dd / MM / yyyy格式在用户端的任何地方显示日期,但这是我的问题的第二部分,首先,它至少应允许输入有效的日期。我卡在这一个,任何帮助,将深深的感谢,我已经找遍了,但我没有能够得到的地步,在此先感谢:)

比拉勒·艾哈迈德(Bilal Ahmed)

我得到了答案,我使用了自定义ModelBinder,以解决此问题,

首先,我在Global.asax的application_start方法中注册了这一行:

ModelBinders.Binders.Add(typeof(DateTime?), new MyDateTimeModelBinder());

这是自定义ModelBinder:

public class MyDateTimeModelBinder : DefaultModelBinder
{
    public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
    {
        var displayFormat = bindingContext.ModelMetadata.DisplayFormatString;
        var value = bindingContext.ValueProvider.GetValue(bindingContext.ModelName);

        if (!string.IsNullOrEmpty(displayFormat) && value != null)
        {
            DateTime date;
            displayFormat = displayFormat.Replace("{0:", string.Empty).Replace("}", string.Empty);
            // use the format specified in the DisplayFormat attribute to parse the date
            if (DateTime.TryParseExact(value.AttemptedValue, displayFormat, CultureInfo.InvariantCulture, DateTimeStyles.None, out date))
            {
                return date;
            }
            else
            {
                bindingContext.ModelState.AddModelError(
                    bindingContext.ModelName,
                    string.Format("{0} is an invalid date format", value.AttemptedValue)
                );
            }
        }

        return base.BindModel(controllerContext, bindingContext);
    }
}

感谢Darin Dimitrov的回答

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ASP.NET MVC5 上的日期时间格式“dd/MM/yyyy”

来自分类Dev

00:00(EST)的ASP.NET MVC日期格式mm / dd / yyyy

来自分类Dev

在Asp.NET MVC中以dd / mm / yyyy格式显示DateTime值

来自分类Dev

保存格式为yyyy / MM / dd HH:mm:ss的datetime在asp.net mvc中导致验证错误

来自分类Dev

在asp.net中将数据表日期转换为dd / mm / yyyy格式

来自分类Dev

如何将 MM/dd/yyyy 转换为 yyyy-MM-dd 格式 ASP.Net

来自分类Dev

将dd-MMM-YYYY格式的日期转换为JS中的日期或dd / mm / yyyy格式

来自分类Dev

如何将dd / MM / yyyy中的日期添加到asp.net中的mysql?

来自分类Dev

将文件中的YYYY / MM / DD格式日期数据转换为DD.MM.YYYY

来自分类Dev

DD / MM / YYYY Moment.js中的日期格式

来自分类Dev

从nchar列中以dd / mm / yyyy格式选择日期

来自分类Dev

如何在UNIX中以MM / DD / YYYY格式打印日期?

来自分类Dev

在python中验证日期mm / dd / yyyy格式

来自分类Dev

如何从 Mysql 日期格式 DD/MM/YYYY 中获取时间?

来自分类Dev

日期格式dd / mm / yyyy读为mm / dd / yyyy

来自分类Dev

RegEx日期格式MM / DD / YYYY

来自分类Dev

jQuery dd / MM / yyyy日期格式验证

来自分类Dev

以dd-MM-yyyy格式插入日期

来自分类Dev

YYYY / MM / DD格式-JavaScript日期验证

来自分类Dev

日期格式,以mm-dd-yyyy

来自分类Dev

如何在linq中设置日期格式“ yyyy-MM-dd hh:mm”?

来自分类Dev

在PostgreSQL中存储格式为yyyy-mm-dd hh:mm:ss的日期的数据类型

来自分类Dev

将日期时间 (yyyy-mm-dd hh:mm:ss) 格式转换为 EXCEL 中的秒

来自分类Dev

如何用PHP中的“ Unix时间戳”格式检查“ YYYY-MM-DD”格式的日期?

来自分类Dev

给定一个日期,在 PHP 中以 yyyy-mm-dd 格式生成完整日期

来自分类Dev

如果我以dd-MM-yyyy格式传递日期,则将yyyy-MM-dd格式的日期保存到SQL Server 2008中

来自分类Dev

如果我以dd-MM-yyyy格式传递日期,则将yyyy-MM-dd格式的日期保存到SQL Server 2008中

来自分类Dev

如何将android中的日期格式从dd-MM-yyyy HH:mm:ss更改为仅dd-MM-yyyy HH:mm?

来自分类Dev

将日期格式从MM / DD / YYYY HH:MM:SS am / pm更改为CSV文件中的YYYY-MM-DD HH:MM:SS

Related 相关文章

  1. 1

    ASP.NET MVC5 上的日期时间格式“dd/MM/yyyy”

  2. 2

    00:00(EST)的ASP.NET MVC日期格式mm / dd / yyyy

  3. 3

    在Asp.NET MVC中以dd / mm / yyyy格式显示DateTime值

  4. 4

    保存格式为yyyy / MM / dd HH:mm:ss的datetime在asp.net mvc中导致验证错误

  5. 5

    在asp.net中将数据表日期转换为dd / mm / yyyy格式

  6. 6

    如何将 MM/dd/yyyy 转换为 yyyy-MM-dd 格式 ASP.Net

  7. 7

    将dd-MMM-YYYY格式的日期转换为JS中的日期或dd / mm / yyyy格式

  8. 8

    如何将dd / MM / yyyy中的日期添加到asp.net中的mysql?

  9. 9

    将文件中的YYYY / MM / DD格式日期数据转换为DD.MM.YYYY

  10. 10

    DD / MM / YYYY Moment.js中的日期格式

  11. 11

    从nchar列中以dd / mm / yyyy格式选择日期

  12. 12

    如何在UNIX中以MM / DD / YYYY格式打印日期?

  13. 13

    在python中验证日期mm / dd / yyyy格式

  14. 14

    如何从 Mysql 日期格式 DD/MM/YYYY 中获取时间?

  15. 15

    日期格式dd / mm / yyyy读为mm / dd / yyyy

  16. 16

    RegEx日期格式MM / DD / YYYY

  17. 17

    jQuery dd / MM / yyyy日期格式验证

  18. 18

    以dd-MM-yyyy格式插入日期

  19. 19

    YYYY / MM / DD格式-JavaScript日期验证

  20. 20

    日期格式,以mm-dd-yyyy

  21. 21

    如何在linq中设置日期格式“ yyyy-MM-dd hh:mm”?

  22. 22

    在PostgreSQL中存储格式为yyyy-mm-dd hh:mm:ss的日期的数据类型

  23. 23

    将日期时间 (yyyy-mm-dd hh:mm:ss) 格式转换为 EXCEL 中的秒

  24. 24

    如何用PHP中的“ Unix时间戳”格式检查“ YYYY-MM-DD”格式的日期?

  25. 25

    给定一个日期,在 PHP 中以 yyyy-mm-dd 格式生成完整日期

  26. 26

    如果我以dd-MM-yyyy格式传递日期,则将yyyy-MM-dd格式的日期保存到SQL Server 2008中

  27. 27

    如果我以dd-MM-yyyy格式传递日期,则将yyyy-MM-dd格式的日期保存到SQL Server 2008中

  28. 28

    如何将android中的日期格式从dd-MM-yyyy HH:mm:ss更改为仅dd-MM-yyyy HH:mm?

  29. 29

    将日期格式从MM / DD / YYYY HH:MM:SS am / pm更改为CSV文件中的YYYY-MM-DD HH:MM:SS

热门标签

归档