Tôi là người đăng ban đầu của câu hỏi được giới thiệu (bị mất đăng nhập) và không bao giờ tìm ra được. Cuối cùng, tôi bỏ nó xuống thói xấu, hy sinh sự gọn gàng và đi với một thứ gì đó như
bool readerHasRows=false;
while(reader.reader())
{
readerHasRows=true;
doStuffOverAndOver();
}
if (!readerHasRows)
{
probablyBetterShowAnErrorMessageThen();
}
Điều thực sự kỳ lạ là nó hoạt động trong một trang aspx chứ không phải trong một trang khác mặc dù các khối mã gần như giống hệt thanh mà quy trình được lưu trữ đã sử dụng.
Không cần phải nói tôi đang tránh .HasRows từ bây giờ;)
CHỈNH SỬA - Management Studio cũng hiển thị các thông báo trong tab thông báo về quy trình xử lý sự cố trong dự án của tôi. Vì vậy, đó dường như là nguyên nhân của vấn đề. Nhưng tại sao nó lại phát nổ .HasRows ??
EDIT2 - Đã xác nhận, đã thay đổi truy vấn để tránh các thông báo cảnh báo và .hasrows hiện là true.