From 0b548997d22315b6316075b07f95a728d17a6b31 Mon Sep 17 00:00:00 2001 From: dougbu Date: Mon, 18 Aug 2014 12:49:50 -0700 Subject: [PATCH] Back `HtmlHelper.Html5DateRenderingMode` with new `ViewContext` property - provides expected scoped semantics - helps a bit with #448 but does not provide an app-wide default --- .../Rendering/Html/HtmlHelper.cs | 12 +++++++++++- src/Microsoft.AspNet.Mvc.Core/ViewContext.cs | 9 +++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/Microsoft.AspNet.Mvc.Core/Rendering/Html/HtmlHelper.cs b/src/Microsoft.AspNet.Mvc.Core/Rendering/Html/HtmlHelper.cs index 5cd4d9a0c7..c02a24a186 100644 --- a/src/Microsoft.AspNet.Mvc.Core/Rendering/Html/HtmlHelper.cs +++ b/src/Microsoft.AspNet.Mvc.Core/Rendering/Html/HtmlHelper.cs @@ -59,7 +59,17 @@ namespace Microsoft.AspNet.Mvc.Rendering } /// - public Html5DateRenderingMode Html5DateRenderingMode { get; set; } + public Html5DateRenderingMode Html5DateRenderingMode + { + get + { + return ViewContext.Html5DateRenderingMode; + } + set + { + ViewContext.Html5DateRenderingMode = value; + } + } /// public string IdAttributeDotReplacement { get; set; } diff --git a/src/Microsoft.AspNet.Mvc.Core/ViewContext.cs b/src/Microsoft.AspNet.Mvc.Core/ViewContext.cs index 0f308cc93d..f1e398c4ee 100644 --- a/src/Microsoft.AspNet.Mvc.Core/ViewContext.cs +++ b/src/Microsoft.AspNet.Mvc.Core/ViewContext.cs @@ -41,6 +41,7 @@ namespace Microsoft.AspNet.Mvc { _formContext = viewContext.FormContext; ClientValidationEnabled = viewContext.ClientValidationEnabled; + Html5DateRenderingMode = viewContext.Html5DateRenderingMode; ValidationSummaryMessageElement = viewContext.ValidationSummaryMessageElement; ValidationMessageElement = viewContext.ValidationMessageElement; @@ -64,6 +65,14 @@ namespace Microsoft.AspNet.Mvc public bool ClientValidationEnabled { get; set; } + /// + /// Set this property to to have templated helpers such as + /// and render date and time + /// values as RFC 3339 compliant strings. By default these helpers render dates and times using the current + /// culture. + /// + public Html5DateRenderingMode Html5DateRenderingMode { get; set; } + /// /// Element name used to wrap a top-level message generated by and /// other overloads.