Това, което трябва да направите, е да извикате ExecuteReader()
на този cmd
обект, така:
public static IEnumerable<int> GetAllVendors()
{
using (var cmd = Data.GetCommand(Configuration.DatabaseOwnerPrefix + ".GetAllInformationAndHelpVendorIds", Connections.MyDbConnection))
{
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
yield return reader.GetInt32(0);
}
}
}
}
Това предполага, че SQL ще върне таблица, чиято първа колона (идентифицирана от индекса 0
към метода GetInt32()
) ще бъде ID, който търсите. Ако SQL връща идентификаторите в друга колона, просто коригирайте индекса към колоната, в която очаквате да ги намерите.
Това решение също очаква връзката на командата вече да е отворена. Ако не е, можете да направите cmd.Connection.Open()
точно преди cmd.ExecuteReader()
.