Wie zu verwenden async und await in LINQ?

Ich bin neu ASP.NET und wurde versucht, auf ein Beispiel-Projekt. Ich weiß das ist eine dumme qs aber bitte Geduld mit mir. Mein code unten ist wieder nur ein Ergebnis, auch wenn es mehrere Zeilen zurückgegeben, die in der SQL-Abfrage. Ich merke, dass FirstOrDefaultAsync gibt nur das erste element. Ich wurde durch die Dokumentation hier: https://msdn.microsoft.com/en-us/library/system.data.entity.queryableextensions(v=vs. 113).aspx aber ich konnte Sie nicht finden, was zu verwenden anstelle von FirstOrDefaultAsync zurückgeben würde nicht nur die erste Zeile, aber alles entspricht meinen SQL-Bedingung.

Dies ist mein code bisher:

    [ResponseType(typeof(Region))]
    public async Task<IHttpActionResult> GetRegion(int id)
    {

        var region_id = from sr in db.ServiceToRegions
                           where sr.Service_ID == id
                           select sr.Region_ID;

        var region = await db.Regions.Select(r =>
            new 
            {
                Region_ID = r.Region_ID,
                Region_Name = r.Region_Name
            }).FirstOrDefaultAsync(r => region_id.Contains(r.Region_ID)); //QQQ

        if (region == null)
        {
            return NotFound();
        }

        return Ok(region);
    }

Was sollte ich verwenden, anstatt FirstOrDefaultAsync?

InformationsquelleAutor 90abyss | 2016-07-10
Schreibe einen Kommentar