Problem with ExecuteReader

Sep 23, 2010 at 3:49 PM

I'm trying to pass last tests for Firebird and get some errors which I don't understand. The result of test.exe is

SELECT t0.CustomerID
FROM Orders t0
WHERE (t0.CustomerID = @p0)
GROUP BY t0.CustomerID
-- p0 = [ALFKI]

SELECT t0.CustomerID, t0.OrderDate, t0.OrderID
FROM Orders t0
WHERE ((t0.CustomerID = @p0) AND ((t0.CustomerID IS NULL AND @n0 IS NULL) OR (t0.CustomerID = @n0)))
-- p0 = [ALFKI]
-- n0 = [ALFKI]

Test 62: TestOrdersIncludeDetailsWithGroupBy - FAILED
Reason: Dynamic SQL Error
SQL error code = -804
Data type unknown

During debuging I can see in the function

protected virtual DbDataReader ExecuteReader(DbCommand command)
{
   var reader = command.ExecuteReader();
   if (this.BufferResultRows)
   {
     // use data table to buffer results
    var ds = new DataSet();
    ds.EnforceConstraints = false;
    var table = new DataTable();
    ds.Tables.Add(table);
    ds.EnforceConstraints = false;
    table.Load(reader);
    reader = table.CreateDataReader();
   }
   return reader;
 }

thet reader has one result [ALFKI] when I stay at "if (this.BufferResultRows)" and after single step F11 at return the result
is changed and after refresh there is string [no result returned].

How can I correct the error?

Regards, Gabriel