You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Label中日期dd与MM位置错乱问题求助

解决Access日期显示与年龄计算的格式问题
  • 可以直接在绑定表达式里指定System.Globalization.CultureInfo,通过显式传入目标文化信息强制格式化,避免日/月颠倒:
    <asp:label id="LabelDateOfBirth" runat="server" text='<%# Eval("DateOfBirth").ToString("dd MMM yyyy", new System.Globalization.CultureInfo("fr-CA")) %>' />
    
  • 核心原因:默认Eval的格式化逻辑可能未正确继承页面设置的culture,显式指定fr-CA文化信息后,会严格按照加拿大法语区的日期规则解析和输出。
  • 如果数据库中DateOfBirth是文本类型而非日期类型,需先转换为DateTime再格式化,避免解析错误:
    <asp:label id="LabelDateOfBirth" runat="server" text='<%# DateTime.ParseExact(Eval("DateOfBirth").ToString(), "dd-MM-yy", new System.Globalization.CultureInfo("fr-CA")).ToString("dd MMM yyyy", new System.Globalization.CultureInfo("fr-CA")) %>' />
    
    这段代码先按dd-MM-yy格式将文本转为DateTime对象,再用目标格式输出,彻底解决日月颠倒导致的年龄计算错误。

内容的提问来源于stack exchange,提问作者wazodnuit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 17:01:17