forq循环中的Linq

时间:2017-05-11 17:33:03

标签: c# asp.net-mvc-5

我在我的控制器中有这个动作:

    public async Task<IActionResult> RiceviListaSpesa([FromBody]List<Prova> ListaAcquisti)
    {

        for (int i = 0; i < ListaAcquisti.Count; i++)
        {
            DateTime dt = Convert.ToDateTime(ListaAcquisti[i].Scadenza);
            var result = await _context.ProdottiMagazzino.SingleOrDefaultAsync(p => p.Prodotto.Codice == ListaAcquisti[i].Codice && p.Scadenza == dt);

        }
        // result = all the row ??
        return (View());
    }

我要做的是将一个变量分配给循环中查询生成的所有结果,以便在循环之外使用它们

1 个答案:

答案 0 :(得分:1)

您是否考虑过以下事项:

public async Task<IActionResult> RiceviListaSpesa([FromBody]List<Prova> ListaAcquisti)
{
    var results = new List<YourResultType>();
    for (int i = 0; i < ListaAcquisti.Count; i++)
    {
        DateTime dt = Convert.ToDateTime(ListaAcquisti[i].Scadenza);
        var result = await _context.ProdottiMagazzino.SingleOrDefaultAsync(p => p.Prodotto.Codice == ListaAcquisti[i].Codice && p.Scadenza == dt);
        results.Add(result);
    } 
    // do whatever you need to all the results stored in results list
    return View();
}