LINQ to SQL:按ID(smallint)选择名称(字符串)

use*_*075 2 c# sql linq

我需要检索一个id的名字(assessment name)

 public int GetAssessmentNo(int AssessmentNo)
        {
            int AssNo = (from a in contxt.View_Assessment
                         where a.id == AssessmentNo
                         select a.AssessmentName);
            return AssNo;
        }
Run Code Online (Sandbox Code Playgroud)

无法将System.Linq.IQueryable类型隐式转换为int

dov*_*vid 5

您的查询返回一组整数.

使用以下方法之一:First(),Single(),FirstOrDefault(),SingleOrDefault()

public int GetAssessmentNo(int AssessmentNo)
{
    int AssNo = (from a in contxt.View_Assessment
                 where a.id == AssessmentNo
                 select a).Single().AssessmentName;
    return AssNo;
}
Run Code Online (Sandbox Code Playgroud)

要么:

public int GetAssessmentNo(int AssessmentNo)
{
    int AssNo = contxt.View_Assessment.Single(a => a.id == AssessmentNo).AssessmentName;
    return AssNo;
}
Run Code Online (Sandbox Code Playgroud)