Sco*_*rke 0 c# asp.net dbnull datareader sqldatareader
我有一个aspx页面,允许用户将修改后的条目提交到数据库中,但是当用户单击Submit以触发存储过程时,我想首先运行检查以查看是否存在具有相同关系的已修改行.
我传递以下查询的结果:
SELECT SwitchRoom.ModifiedID FROM SwitchRoom WHERE
SwitchRoomID = @ChkSwitchRmID", constring;
Run Code Online (Sandbox Code Playgroud)
进入a DataReader以确定该关系是否存在.
我需要它来确定阅读器是否返回NULL以允许执行该过程,如果没有,则不允许用户保存信息.
我尝试过以下方法:
if (dbreader = NULL)
{
Fire Procedure
}
else
{
"Error Message"
}
Run Code Online (Sandbox Code Playgroud)
而且我甚至试图将读者传递给一个datatable并且运行它而没有任何运气.
如何检查DataReader的结果null?
我更喜欢使用ExecuteScalar和一个计算匹配行的查询:
"SELECT count(*) FROM SwitchRoom WHERE SwitchRoomID = @ChkSwitchRmID"
Run Code Online (Sandbox Code Playgroud)
然后将Execute标量的结果与零进行比较.不需要空检查.
如果您确实想使用reader方法,可以使用以下属性来检查它是否有任何行.即使它没有返回任何内容,该对象也不会为null.
if (dbReader.HasRows) {....}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3809 次 |
| 最近记录: |