转换IEnumerable没有item的定义

时间:2013-07-31 03:44:45

标签: c# ienumerable

我正在尝试从IEnumerable返回结果,我感兴趣的是一个包含我正在寻找的内容的列。但基于成员的建议答案selecting a certain column value from looping in ienumerable,我得到了一个编译错误:

public IEnumerable<Guid> GetGuids(int id)
{
    using (SqlCommand _command = new SqlCommand("StoredProc"))
    {
        _command.Connection = new SqlConnection(conString);
        _command.Connection.Open();
        _command.CommandType = CommandType.StoredProcedure;
        _command.Parameters.AddWithValue("@ItemID", id);

            return _command.ExecuteReader()
                  .Cast<DbDataRecord>()
                  .Select(r => (Guid)r.Item["GuidColumn"]);
    }
}

错误:DbDataRecord不包含Item的定义。 我该怎么做?

1 个答案:

答案 0 :(得分:3)

我认为应该是:

return _command.ExecuteReader()
               .Cast<DbDataRecord>()
               .Select(r =>(Guid) r["GuidColumn"]);