如何样让datetime类型的数据只有年月日

怎么样让datetime类型的数据只有年月日?
数据库中的字段类型是datetime,现在从数据库中提出的数据是年月日小时分秒的形式,我只想要年月日,怎么样在 
不改变数据类型的情况下做到?

------解决方案--------------------
DateTime.Now.ToShortDateString() 
------解决方案--------------------
convert(char(20),时间,111) as 时间 
------解决方案--------------------
.ToShortDateString(); 
------解决方案--------------------
datetime.ToString( "yyyy-MM-dd "); 
------解决方案--------------------
DateTime.Now.ToShortDateString() 
或者用楼上的方法 
------解决方案--------------------
str = dt.ToString( "yyyy-M-d "); 
------解决方案--------------------
如果是想在gridview等中显示如:yyyy-MM-dd的时间形式,可如下: 
string sql1 = "SELECT 公告编号,公告名称,convert(char(20),发布时间,111) as 发布时间,convert(char(20),生效时间,111) as 生效时间,convert(char(20),过期时间,111) as 过期时间,发布人 FROM Announce "; 

------解决方案--------------------
表示页: <%# DataBinder.Eval(Container.DataItem, "outdate ", "{0:yyyy-MM-dd} ") %> 
------解决方案--------------------
this.Label1.Text=objDataReader.GetDateTime(0).ToShortDateString(); 
------解决方案--------------------
DateTime.Now.ToShortDateString() 
------解决方案--------------------
DateTime.Now.ToShortDateString() 
这样基本行 
------解决方案--------------------
.ToShortDateString(); 
------解决方案--------------------
Eval( "字段 ", "{0:d} ") 
------解决方案--------------------
格式化,ToString( "yyyy-MM-dd "); 
------解决方案--------------------
两种方法,select的时候,就用SQL自带的convert取得想要的格式,也可以到VS里再用ToString( "yyyy-MM-dd "),y代表年,yy短年份,以2000为分界,yyyy为完整年份,M为无前导0的月份,MM为前导0的月份,d为无前导0的日,dd为有前导0的日 
------解决方案--------------------
datetime.tostring(yyyy-MM-dd) 
------解决方案--------------------
Convert(取前几位,列名,时间区域码联机帮助里有) 

例: 
Convert(char(5),Title,112) 

显示出的是:01-12 
------解决方案--------------------
public string formatdatetime(string date) 


DateTime dt = DateTime.Parse(date); 
return dt.ToString( "yyyy年MM月dd日 "); 




------解决方案--------------------
DataTime.ToString( "yyyy年MM月dd日 ");

你可能感兴趣的:(如何样让datetime类型的数据只有年月日)