вернуть данные как SqlDataReader - PullRequest
0 голосов
/ 29 мая 2019

Я работаю над проектом ASP.NET.У меня есть хранимая процедура в SQL Server, которая возвращает список данных для отображения в диаграмме.Эта хранимая процедура работает нормально.Мне нужно, чтобы возвращаемые данные были объектом SqlDataReader для передачи в Chart.DataBindTable.

Я называю хранимую процедуру следующим образом:

string spName = "spFetchDetails";
DbCommand dbCommand = this.ObjDatabase.GetStoredProcCommand(spName);
this.ObjDatabase.AddInParameter(dbCommand, "@Company", DbType.Int32, Company);
this.ObjDatabase.AddInParameter(dbCommand, "@Title", DbType.String, Title);
this.ObjDatabase.AddInParameter(dbCommand, "@DateRange", DbType.String, DateRange);

DataTable dt = new DataTable();
dt = this.ObjDatabase.ExecuteDataSet(dbCommand).Tables[0];

Здесь код возвращает сохраненныйРезультат процедуры как DataTable, я хочу вызвать ExecuteReader() метод, но я не уверен, как это сделать.

Chart.DataBindTable(dt, "Example");

Это код для отображения диаграммы.

Ниже, как я делаю в другом графике, и это работает.

SqlCommand cmd = new SqlCommand(
  "Select ai.ItemDescription, ai.ItemRate, los.sellingprice, los.mrp from aitem ai inner join losShopItemShipmentDetail los on los.itemid = ai.itemid", con);
con.Open();
SqlDataReader rdr = cmd.ExecuteReader();

Chart.DataBindTable(rdr, "ItemDescription");

Как мне вызвать хранимую процедуру таким образом?или есть способ передать DataTable в функцию DataBindTable?

public void DataBindTable (System.Collections.IEnumerable dataSource, string xField);

Ответы [ 2 ]

1 голос
/ 29 мая 2019

Вы можете попробовать это (пример кода, чтобы визуализировать, как его использовать):

Chart c = new Chart();
DataTable dt = new DataTable();
c.DataBindTable(dt.AsEnumerable());
0 голосов
/ 29 мая 2019

Вы можете вызвать хранимую процедуру, как показано ниже.

SqlCommand cmd = new SqlCommand("<SqlProcedureName>", con)
cmd.CommandType = CommandType.StoredProcedure;

Но вместо того, чтобы назначить устройство чтения данных для управления диаграммой.Найти другой способ установить только данные

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...