私は参照された質問(ログインを失った)の元の投稿者であり、それを理解することができませんでした。結局、私はそれを悪いブードゥーに置き、清楚さを犠牲にして、次のようなものを選びました
bool readerHasRows=false;
while(reader.reader())
{
readerHasRows=true;
doStuffOverAndOver();
}
if (!readerHasRows)
{
probablyBetterShowAnErrorMessageThen();
}
本当に奇妙だったのは、ストアドプロシージャが使用したコードブロックがほぼ同じであるにもかかわらず、あるaspxページでは機能し、別のページでは機能しなかったことです。
言うまでもなく、これからは.HasRowsを避けます;)
編集 --Management Studioは、プロジェクトの問題の手順の[メッセージ]タブにもメッセージを表示します。それが問題の原因のようです。しかし、なぜそれは.HasRowsを盗聴するのでしょうか??
編集2 -確認し、警告メッセージを回避するようにクエリを変更し、.hasrowsがtrueになりました。