【问题标题】:ASP.NET, SQL Server, LINQTOSQL and Date formatsASP.NET、SQL Server、LINQTOSQL 和日期格式
【发布时间】:2009-02-07 18:17:39
【问题描述】:

我正在通过以下方式设置我的 .net 应用程序的语言环境:

 string userLocale = Web.Helpers.LocaleHelpers.GetBestRFC3066Locale(this.Context.Request.UserLanguages);

            if (userLocale != String.Empty)
            {
                System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture(userLocale);
                System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(userLocale);
            }

这很好用,所以我的日期将以基于区域设置的格式显示,即

2009 年 12 月 10 日,英文版 和 2009 年 10 月 12 日对我们来说

但是,当我通过 LinqToSql 保存日期时,我需要以通用格式存储这些日期。

目前,当美国用户运行该应用程序时,存储在数据库中的日期为美国格式,而当英国用户使用该应用程序时,其日期为英国格式。

关于如何最好地实现这一点的任何建议?

【问题讨论】:

    标签: asp.net sql-server date


    【解决方案1】:

    在 SQL Server 中将日期存储为 datetime 值。这样您就不会遇到转换问题。

    【讨论】:

      【解决方案2】:

      Brannon 在那里找到了正确的解决方案。在 SQL 中拥有日期时间格式的变量后,您可以使用 CONVERT T-SQL 关键字将其转换为其他日期时间格式

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-14
        • 2017-05-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多