I have a very complex stored procedure that is definitely returning values when I run ExecuteReader
but when I try to load the data, it seems to disappear.
using (var dbContext = new SuperPortalDbContext())
{
// Create resulting data table
System.Data.DataTable result = new DataTable();
// Create command
var cmd = dbContext.Database.Connection.CreateCommand();
cmd.CommandType = commandType;
cmd.CommandText = sql;
cmd.CommandTimeout = 120;
// Add all parameters
foreach (SqlParameter parameter in parameters)
{
var p = cmd.CreateParameter();
p.ParameterName = parameter.ParameterName;
p.Value = parameter.Value;
cmd.Parameters.Add(p);
}
try
{
// Execute
dbContext.Database.Connection.Open();
System.Data.Common.DbDataReader reader = cmd.ExecuteReader();
result.Load(reader);
}
finally
{
// closes the connection
dbContext.Database.Connection.Close();
}
// returns the DataSet
return result;
}
reader.NextResult()
to see.learn.microsoft.com/en-us/dotnet/api/…