DbCommand с Linq?

Я использую DbCommand от: System.ComponentModel.Component

Я строю объект с параметрами:

DbCommand command = _webERPDB.GetStoredProcCommand("mySp");
_webERPDB.AddInParameter(command, "@a", DbType.Int32, policyId);
_webERPDB.AddInParameter(command, "@b", DbType.Int32, appPolicyPrintQaCheckListId);
_webERPDB.AddInParameter(command, "@c", DbType.Int32, createdBy);

А теперь я хочу повторить это, используя linq:

IEnumerable<DbParameter> t = from a in command.Parameters select a;

но он генерирует следующую ошибку:

введите описание изображения здесь

1 ответ

Решение
IEnumerable<DbParameter> t = command.Parameters.Cast<DbParameter>();

Вы должны использовать Cast<T>() потому что тип Parameters является DbParameterCollection, который реализует IEnumerable (не общего), но не IEnumerable<T>, Ты можешь написать

IEnumerable t = command.Parameters;
Другие вопросы по тегам