C#中,怎么判断一个DataSet中的某个表是否创建(有效)?

dibov 2003-12-12 03:53:39
如,怎么知道ds.Tables["Test"]有效?
...全文
61 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
brightheroes 2003-12-12
  • 打赏
  • 举报
回复
举个简单的例子
Table1里面的第一列是主键

DataRow dr = Table1.NewRow();
dr[0] = null;//报错
dr[0] = DBNull.Value;//没有问题,可编译通过

dibov 2003-12-12
  • 打赏
  • 举报
回复
哦,那再问一句。在什么情况下用DBNull.Value?
chinalin0 2003-12-12
  • 打赏
  • 举报
回复
ds.Tables["Test"]其实是一个引用,相当于指针,与数据库的空值不是一回事呀,故可用
ds.Tables["Test"] == null
而不能用
ds.Tables["Test"] == DBNull.Value;
我查MSDN,得知,Value是DBNull类的的唯一实例,

brightheroes 2003-12-12
  • 打赏
  • 举报
回复
if(ds.Tables.Contais("Test"))
存在
else
不存在

jinbao 2003-12-12
  • 打赏
  • 举报
回复
ds去访问数据库的,它首先去找“Test”这个表,当然找不到。
dibov 2003-12-12
  • 打赏
  • 举报
回复
为什么这样不行
ds.Tables["Test"] == DBNull.Value;
jinbao 2003-12-12
  • 打赏
  • 举报
回复
如果前面的句子没有错,可以用异常捕捉,就可以判断表是否没有创建。
l_clove 2003-12-12
  • 打赏
  • 举报
回复
ds.Tables["Test"] == null;

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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