相关疑难解决方法(0)

ASP.NET MVC3 - DateTime格式

我正在使用ASP.NET MVC 3.
我的ViewModel看起来像这样:

public class Foo
{
    [DataType(DataType.Date)]
    [DisplayFormat(DataFormatString = "{0:dd.MM.yyyy}", ApplyFormatInEditMode = true)]
    public DateTime StartDate { get; set; }
    ...
}
Run Code Online (Sandbox Code Playgroud)

在视图中,我有这样的事情:

<div class="editor-field">
    @Html.EditorFor(model => model.StartDate)
    <br />
    @Html.ValidationMessageFor(model => model.StartDate)
</div>
Run Code Online (Sandbox Code Playgroud)

StartDate以正确的格式显示,但当我将其值更改为19.11.2011并提交表单时,我收到以下错误消息:"值'19 .11.2011'对StartDate无效."

任何帮助将不胜感激!

datetime asp.net-mvc-3

28
推荐指数
2
解决办法
3万
查看次数

MVC 4如何通过客户端验证验证非美国日期?

我遇到了一个问题,我遇到了日期时间字段的客户端验证问题.当我尝试提交时,它一直告诉我日期无效(2013年7月27日).但是,如果我将日期转换为美国格式(2013年7月27日).

我的观点模型如下,

[DataType(DataType.Date), DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime? AuditDate { get; set; }
Run Code Online (Sandbox Code Playgroud)

的index.html

 @Html.TextBoxFor(m => m.AuditDate)
Run Code Online (Sandbox Code Playgroud)

我已经更新了我的web.config

<globalization culture="en-AU" uiCulture="en-AU" />
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

谢谢

asp.net-mvc asp.net-mvc-3 asp.net-mvc-4

12
推荐指数
2
解决办法
2万
查看次数

在MVC5中指定日期格式(dd/MM/yyyy)

我正在尝试处理日期值的用户输入,我想提示用户以这种格式输入日期:dd/MM/yyyy

我试图做的:

我在这个问题中阅读并实现了Darin的答案: 在asp.net mvc 4中格式化日期时间

这是我的实施:

在Global.asax中

    (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);
            if (DateTime.TryParse(value.AttemptedValue, 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);
    }
Run Code Online (Sandbox Code Playgroud)

模型中的出发日期:

[Required(ErrorMessage = "Departure date is required")]
        [Display(Name = "Departure Date")]
        [DataType(DataType.Date)]
        [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc datetime date

9
推荐指数
2
解决办法
2万
查看次数

如何在MVC Unobtrusive Validation中验证DateTime?

使用MVC4启用客户端和不显眼验证,我试图了解验证如何确定输入的DateTime值是否有效.

在我的应用程序中,此格式化日期有效:01/31/2013,如果我输入:31/01/2013,我得到:

字段[fieldId]必须是日期

它如何确定什么是有效日期?

asp.net-mvc jquery-validate unobtrusive-validation asp.net-mvc-3 asp.net-mvc-4

7
推荐指数
1
解决办法
5458
查看次数

日期格式dd/MM/yyyy无法在asp.net mvc 5中运行

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

24/01/2016

但它显示验证消息:

字段JoiningDate必须是日期.

这是我尝试过的:

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

此外,我希望它在用户端的任何地方以dd/MM/yyyy格式显示日期,但这是我的问题的第二部分,首先,它至少应该允许有效的日期输入.我坚持这个,任何帮助都会深深感激,我已经搜遍了所有,但我无法达到目的,在此先感谢:)

datetime date-formatting asp.net-mvc-5

3
推荐指数
1
解决办法
1万
查看次数

使用日期时间和日期选择器

我想在我的asp.net mvc web应用程序上测试数据纠察队.

1.所以我创建了以下测试模型: -

public class TestClass
    {
        [DataType(DataType.Date)]
        public DateTime D { get; set; }
    }
Run Code Online (Sandbox Code Playgroud)

2.我添加了以下脚本: -

  $(function () {
    $(".datefield").datepicker();
});
Run Code Online (Sandbox Code Playgroud)

3.根据我的观点,我有以下内容: -

@model MvcApplication6.Models.TestClass


@Html.EditorFor(item=>item.D)
Run Code Online (Sandbox Code Playgroud)

现在压延机会显示好,但我有这两个问题: -

1.如果在action方法中,我将数据时间指定为今天的日期,如下所示: -

 public ActionResult Index()
            {
                TestClass t = new TestClass();
               t.D = DateTime.Now.Date;

                return View(t);
            }
Run Code Online (Sandbox Code Playgroud)

然后日历将切换日期和月份,因此6月12日成为12月6日如下: - 在此输入图像描述

2.如果我将dataitme删除为等于今天的日期,我将获得以下默认值: -

01/01/0001
Run Code Online (Sandbox Code Playgroud)

3.如果我指定datetime以允许null,并且我没有指定任何defualt值,我将得到以下异常

[DataType(DataType.Date)]
        public DateTime? D { get; set; }
Run Code Online (Sandbox Code Playgroud)

传递到字典中的模型项为null,但此字典需要"System.DateTime"类型的非null模型项.

那么有人可以就导致这三个问题的原因提出建议吗?谢谢

编辑 确定我将我的属性更改为String而不是日期时间,如下所示: -

[DataType(DataType.Date)]
        [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
        public string CreateDate { get; …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc jquery-ui-datepicker asp.net-mvc-5

1
推荐指数
1
解决办法
1万
查看次数