使用WHERE子句在Linq中选择AS

时间:2012-09-25 09:48:06

标签: c# linq

我正在尝试使用Linq查询填充下拉列表。但是,我需要将FirstName和Surname作为一个字段。 DDL.DataTextField中的连接会返回字段未找到错误。

SQL将是这样的:

SELECT (FirstName + SPACE + Surname) AS FullName FROM Table WHERE ID=1

Current Linq:

public IList<mytable> GetNames(int p_ID)
{
    return db.mytable.Where(c => c.ID_fk == p_ID).ToList();
}

3 个答案:

答案 0 :(得分:14)

如果需要全名:

,则可以使用此功能
public IList<string> GetNames(int p_ID)
{
    return db.mytable.Where(c => c.ID_fk == p_ID)
                     .Select(x => x.FirstName + " " + x.Surname)
                     .ToList();
}

答案 1 :(得分:2)

你可以试试这个:

return db.mytable.Where(c => c.ID_fk == p_ID).Select(c=>c.FirstName + " " + c.Surname). ToList();

所以你有一个字符串列表

答案 2 :(得分:1)

您可以尝试使用

return db.mytable.Where(a => a.ID_fk==p_ID)
                  .Select(a => a.FirstName + "-" + a.Surname)
                  .ToList();