【问题标题】:Date Format in dataset数据集中的日期格式
【发布时间】:2014-01-20 23:26:15
【问题描述】:

我有 sql server 中的 datetime 列及其 24 小时格式。但是,当我执行查询以获取数据并将其存储在数据集中时,它显示 12 小时格式。我需要与数据库中相同的格式。

请帮忙。

【问题讨论】:

标签: c# asp.net ado.net dataset


【解决方案1】:

日期时间列中的值存储为自 01.01.1900 以来的天数(4 字节)和自午夜以来的时钟滴答数(4 字节)......它与 24 小时/12 小时格式无关......只是您对日期值的处理方式(受区域设置等影响)...

【讨论】:

    【解决方案2】:

    在 Global.asax 中

    using System.Globalization;
    using System.Threading;
    
    //...
    
    protected void Application_BeginRequest(Object sender, EventArgs e)
    {    
      CultureInfo newCulture = (CultureInfo) System.Threading.Thread.CurrentThread.CurrentCulture.Clone();
      newCulture.DateTimeFormat.FullDateTimePattern = "dd/MMM/yyyy HH:mm:ss";
     newCulture.DateTimeFormat.DateSeparator = "-";
     Thread.CurrentThread.CurrentCulture = newCulture;
    }
    

    【讨论】:

    • 对于同一数据集中的许多列我需要对特定列执行此操作是不可能的。
    • @Saritha.S.R 编辑了我的答案。请尝试
    • 谨慎使用此方法,这将改变您的日期时间在整个站点中的行为。+1 以获得简单而紧凑的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-13
    • 1970-01-01
    • 2011-12-20
    • 2010-11-13
    • 2019-01-23
    • 2020-06-28
    相关资源
    最近更新 更多