Asp.net Sql Server 2008删除0';从日期算起

Asp.net Sql Server 2008删除0';从日期算起,asp.net,sql-server-2008,Asp.net,Sql Server 2008,我正在使用asp.net/c#构建一个应用程序。我正在接受英国格式的日期。 假设用户以02/04/2001格式输入日期,它会正确地存储在表中。但是,当我检索它时,日期以这种格式出现4/2/2001。我知道它是以美国格式出现的,这对我来说没关系,我的问题是它正在从一位数的数字中删除0。我必须检查这些数字,并在其前面填充一个零,然后显示日期。有什么办法吗。 谢谢您可以在.Net中格式化从SQL Server检索到的日期,而不必担心底层值。如果需要,请使用区域性特定格式 为了澄清(根据Damie

我正在使用
asp.net/c#
构建一个应用程序。我正在接受英国格式的日期。 假设用户以
02/04/2001
格式输入日期,它会正确地存储在表中。但是,当我检索它时,日期以这种格式出现
4/2/2001
。我知道它是以美国格式出现的,这对我来说没关系,我的问题是它正在从一位数的数字中删除
0
。我必须检查这些数字,并在其前面填充一个零,然后显示日期。有什么办法吗。
谢谢

您可以在.Net中格式化从SQL Server检索到的日期,而不必担心底层值。如果需要,请使用区域性特定格式




为了澄清(根据Damien的评论),我假设您在SQL中将值存储为
Dates
DateTimes
DateTime2s
等,而不是作为字符串。如果情况并非如此,则应首先将日期转换为适当的类型。

您应将日期保存为
date
datetime
值,并将其从数据库中加载到数据库中,但这些值没有格式。反过来,在.NET代码中,您应该将它们存储为
DateTime
对象(同样没有格式)。您应该在代码中尽可能晚地将它们转换为字符串(用于显示)。为了避免使用日期的整数值来定义强类型的格式,可以考虑将列更改为字符串类型:p。SCNR@eFloh-根据我的经验,可能80%的日期处理问题都是由将日期视为字符串的人引起的,我应该用更多的讽刺标签来标记我的评论,而不是作为一个合适的数据类型(数据和/或日期时间)@Damien_The_unsiever-你完全正确;)