簡體   English   中英

LINQ查詢不返回單個值

[英]LINQ query doesn't return the single value

我有這個查詢,我想返回一個單獨的值,即I.Id,我有一個參數,其中填充了從控制器發送到Dao的Id(Linq查詢嵌套的位置)。 問題是,這個查詢不只是返回一個值,而是返回該查詢產生的表中的每個字段,我只想要Id。

這是查詢:

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();
                 }
        }

有人可以幫我解決這個問題嗎? 怎么了 ?

您的退貨類型是InscriptionDetail 如果它只是你需要返回的int id,為什么不改為以下?

public int GetInscriptionIdByPersonId(int personId)
{
    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 == personId
            select i.Id;
        return inscription.FirstOrDefault();
     }
 }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM