Firebird ADO.NET Data Provider를 사용하고 있습니다. 사용중인 서비스에 독자를 전달하기 전에 행이 반환되었는지 여부를 확인하고 싶습니다. 다음 코드를 고려 : 내가 지금 배운 것은 그 FbDataReader.HasRows
항상 반환 True입니다결과에 행이 있는지 확인하는 방법은 무엇입니까? (FbDataReader.HasRows는 항상 true를 반환합니다!)
FbCommand cmd = GetSomeCommandFromTheEther();
FbDataReader reader = cmd.ExecuteReader();
if (reader.HasRows)
DoSomethingWith(reader);
else
TellTheUserWeGotNothing();
. 사실 the source code을 보면 FbDataReader.command.IsSelectCommand
에 대한 래퍼 일뿐 아니라 쓸모 없을뿐만 아니라 속성 이름 "HasRows"가 완전히 잘못된 이름으로 표시됩니다.
어쨌든 주어진 레코드에 의 레코드 포인터가없는 행이 있는지 어떻게 알 수 있습니까?? 독자가 외부 서비스에 전달하려고합니다. 결과를 확인하기 위해 FbDataReader.Read()
으로 전화하면 행을 사용하며 DoSomethingWith()
은 첫 번째 행을 가져 오지 않습니다.
http://tracker.firebirdsql.org/browse/DNET에서 버그를 신고 할 수 있습니까? –
@MarkRotteveel [하나있다] (http://tracker.firebirdsql.org/browse/DNET-305), "Will not Fix"로 마감되었습니다. –