如何获得生日C#

时间:2015-03-06 09:36:46

标签: c# sql datetime

我需要一些帮助。

我在asp.net C#中编写了一个web应用程序,我想要下一个生日。我有。

1字段名称birthdate,键入DateTime。例如:1991-01-02 00:0000:0000 (yyyy-MM-dd)。我想在转发器中向人们展示下一个生日。

select * from tblBirthday where birthdate between 2015-01-01 and datenow

但是,现在我使用datetime.now后面的所有代码都是string类型,生日值是datetime类型。
如何使用datetime类型获取datetime.now。

3 个答案:

答案 0 :(得分:1)

您的datenow究竟是什么?尝试使用存储过程,并使日期成为datetime sql类型的参数,因此它适用于BETWEEN结构,或使用sql server上的内置GETDATE()函数一边,像这样:

select * from tblBirthday where birthdate between 2015-01-01 and GETDATE()

答案 1 :(得分:0)

使用Sql CAST AND CONVERT

  

CAST语法:CAST(表达式AS data_type [(length)])

     

CONVERT的语法:CONVERT(data_type [(length)],expression [   ,风格])

等。

select * from tblBirthday where Cast(birthdate as date) between 
cast('01/01/2015' as date) and cast(getdate() as date)
--where getdate() is the sql function to get current datetime.

答案 2 :(得分:0)

确保在c#中传递DateTime.Now而不是DateTime.Now.ToString() 或者您可以对datetime“dd-MM-yy”进行格式化,然后将其转换为正确的日期时间对象,如下所示......

 DateTime datetimenow = DateTime.Parse(DateTime.Now.ToString("dd-MM-yy"));