在基于 ASP.NET 5 Web 应用程序模板的项目中, View 模型的此属性
[Display(Name = "Subscription Expires")]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:D}")]
public DateTime? SubscriptionExpires { get; set; }
当 View 中由 @Html.DisplayFor(model => model.SubscriptionExpires)
渲染时,无论用户区域设置如何,都会显示美国日期格式。
如何确保日期以用户格式显示?
最佳答案
要设置 RC2 版本的日期区域设置,您可以在 Startup.cs 文件中的配置方法中使用以下内容:
var ci = new CultureInfo("en-GB");
ci.DateTimeFormat.ShortDatePattern = "dd/MM/yyyy";
// Configure the Localization middleware
app.UseRequestLocalization(new RequestLocalizationOptions
{
DefaultRequestCulture = new RequestCulture(ci),
SupportedCultures = new List<CultureInfo>
{
new CultureInfo("en-GB"),
},
SupportedUICultures = new List<CultureInfo>
{
new CultureInfo("en-GB"),
}
});
据我所知,全局化还没有结束,您可以从这篇博文中找到更多信息,该博文截至 RC1-final 是正确的:RC1-final Globalization以及 GitHub 上的 ASP.Net 本地化存储库 Localization repo .
希望这对您有帮助。
关于c# - 在 MVC 6 应用程序中显示本地日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34871231/