C# LINQ查询不返回单个值
我有这个查询,我想返回一个值,它是I.Id,我有一个参数,这个参数由一个Id填充,该Id从控制器发送到嵌套Linq查询的DAO。 问题是,这个查询不仅返回一个值,还返回这个查询生成的表中的每个字段,我只需要Id 以下是查询:C# LINQ查询不返回单个值,c#,asp.net,linq,C#,Asp.net,Linq,我有这个查询,我想返回一个值,它是I.Id,我有一个参数,这个参数由一个Id填充,该Id从控制器发送到嵌套Linq查询的DAO。 问题是,这个查询不仅返回一个值,还返回这个查询生成的表中的每个字段,我只需要Id 以下是查询: public InscriptionDetail GetInscriptionIdByPersonId(int id) { using (var db = new HIQTrainingEntities())
public InscriptionDetail GetInscriptionIdByPersonId(int id)
{
using (var db = new HIQTrainingEntities())
{
var inscription =
from i in db.Inscriptions
join c in db.Certifications on i.PersonId equals c.PersonId
where i.PersonId == id
select new InscriptionDetail
{
Id = i.Id,
};
return inscription.FirstOrDefault();
}
}
有人能帮我解答这个问题吗?
怎么了 您的返回类型非常详细。如果它只是需要返回的int-id,为什么不更改为以下内容
public int GetDiftinedBypersonidint personId
{
使用var db=新的HIQTrainingEntities
{
变号铭文=
来自db.铭文中的i
在db中加入c。i.PersonId上的认证等于c.PersonId
其中i.PersonId==PersonId
选择i.Id;
返回铭文。FirstOrDefault;
}
}
详细信息的定义是什么?SQL查询本身是否返回表中的所有列?或者,该方法返回的铭文详细信息是否包含Id以外的属性?或者它返回的是一个铭文详细信息,其字段不是显示默认值的Id,例如ints为0,字符串为null,等等?因为铭文详细信息是该方法的预期返回类型。从该方法返回“InsciptionDetail”对象。如果要访问id,可以执行以下操作:detail.id。