当前上下文中不存在名称(时间转换过程中出现的问题)

zhouing00 2010-11-05 02:51:47
this.lblstarttime.Text = reader["time"].ToString("YYYY-MM-dd");出现错误为错误 当前上下文中不存在名称“yyyy”....该怎么解决??
...全文
225 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzz9413 2010-11-05
  • 打赏
  • 举报
回复
if ((reader["time"]) != null)
{
this.lblstarttime.Text = reader["time"].ToString("YYYY-MM-dd");
}
chenyang2000 2010-11-05
  • 打赏
  • 举报
回复
[Quote=引用楼主 zhouing00 的回复:]
this.lblstarttime.Text = reader["time"].ToString("YYYY-MM-dd");出现错误为错误 当前上下文中不存在名称“yyyy”....该怎么解决??
[/Quote]


你要先判断这有没有值 如果没有你进行转换当然会报错的
chuanzhang5687 2010-11-05
  • 打赏
  • 举报
回复
+1[Quote=引用 9 楼 wyq29 的回复:]
this.lblstarttime.Text = Convert.ToDateTime(reader["time"]).ToString("yyyy-MM-dd");
[/Quote]
zengjiaqin 2010-11-05
  • 打赏
  • 举报
回复
this.lblstarttime.Text =reader["time"]==null?"": Convert.ToDateTime(reader["time"]).ToString("yyyy-MM-dd");
zhudachuncomeon 2010-11-05
  • 打赏
  • 举报
回复

注意你首先引用一个命名空间,using System.Data.SqlTypes;
在读数据的时候判读是否为空 (reader["time"] == DBNull.Value)? 这个默认一个时间 :Convert.ToDateTime(reader["time"]);
BIRD72sky 2010-11-05
  • 打赏
  • 举报
回复
我没没有这样写过,帮顶!
遊戲王千金 2010-11-05
  • 打赏
  • 举报
回复
 
/// <summary>
/// 转换为日期(错误兼容)
/// </summary>
/// <param name="obj">要转换的对象</param>
public DateTime ToDate(object obj)
{
DateTime result = DateTime.TryParse(obj.ToString(), out result) ? result : DateTime.Now;
return result;
}
sunny_yu 2010-11-05
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 wyq29 的回复:]
this.lblstarttime.Text = Convert.ToDateTime(reader["time"]).ToString("yyyy-MM-dd");
[/Quote]

+1
高三石 2010-11-05
  • 打赏
  • 举报
回复
this.lblstarttime.Text =reader["time"]==null?"":Convert.ToDateTime(reader["time"]).ToString("yyyy-MM-dd");

gz0817 2010-11-05
  • 打赏
  • 举报
回复


/// <summary>
/// 把string转换成DateTime(如果传入是NULL 或者 )
/// </summary>
/// <param name="DTStr"></param>
/// <returns></returns>
public DateTime StrToDateTime(string DTStr)
{
DateTime outDT;
DateTime.TryParse(DTStr, out outDT);
if (outDT == Convert.ToDateTime("0001-1-1 0:00:00"))
outDT = Convert.ToDateTime("1900-1-1 0:00:00");
return outDT;
}
wyq29 2010-11-05
  • 打赏
  • 举报
回复
this.lblstarttime.Text = Convert.ToDateTime(reader["time"]).ToString("yyyy-MM-dd");

zhouing00 2010-11-05
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 liuqian4243 的回复:]
reader["time"].ToString("YYYY-MM-dd");


只是时间类型才能够这样写,

reader["time"]

需要先转换成时间类型再tostring
[/Quote]有道理,怎样才把reader["time"]转换成日期格式呢?
zhouing00 2010-11-05
  • 打赏
  • 举报
回复
上述我试过了,都 不行哦
注,我是在vs里面的.cs中写的代码
V-Far 2010-11-05
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 qingfeng_wu 的回复:]

this.lblstarttime.Text =reader["time"]==null?"": reader["time"].ToString("yyyy-MM-dd");不要这样写,应该这样this.lblstarttime.Text =reader["time"]+""==""?"": reader["time"].ToString("yyyy-MM-dd");这样不管怎么样都不会抛出异常……
[/Quote]如果reader["time"]为空的时候....也可以+""????
Ny-6000 2010-11-05
  • 打赏
  • 举报
回复
reader["time"].ToString("YYYY-MM-dd");


只是时间类型才能够这样写,

reader["time"]

需要先转换成时间类型再tostring
吴青峰 2010-11-05
  • 打赏
  • 举报
回复
this.lblstarttime.Text =reader["time"]==null?"": reader["time"].ToString("yyyy-MM-dd");不要这样写,应该这样this.lblstarttime.Text =reader["time"]+""==""?"": reader["time"].ToString("yyyy-MM-dd");这样不管怎么样都不会抛出异常。
吴青峰 2010-11-05
  • 打赏
  • 举报
回复
reader["time"].ToString("yyyy-MM-dd")改小写的看看。
q107770540 2010-11-05
  • 打赏
  • 举报
回复
this.lblstarttime.Text =reader["time"]==null?"": reader["time"].ToString("yyyy-MM-dd");

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧