看下这段代码,为什么一直都是提示else后面的代码?该怎么解决

看下这段代码,为什么一直都是提示else后面的代码?
DataTable   dt   =   DataBase.DB_Manager.GetDataSet( "select   *   from   nb_TC_FACTORY ").Tables[0];
if(dt.Rows.Count==0)
{
string   sql= "insert   into   nb_TC_FACTORY(FactoryNO,FactoryName)   values( ' "+this.tbFactoryID.Text+ " ', ' "+this.tbFactory.Text+ " ') ";
DataBase.DB_Manager.ExecuteNonQuery(sql);
Bind();
}
else
{
Response.Write( " <script> alert   ( '廠商編號已存在! ') </script> ");
}

------解决方案--------------------
如果有值,你的dt.Rows.Count> 0
如果无值,你的dt是null
这两种情况都是else
------解决方案--------------------
知道了就结贴散分
------解决方案--------------------
jf
------解决方案--------------------
jf
------解决方案--------------------
判断问题~
------解决方案--------------------
因为 dt.Rows.Count != 0
------解决方案--------------------
你的记录集里面是空的嘛,没查出字段来,COUNT就会=0,那就肯定走ELSE喽。