0

次のコントローラーを使用して、年のドロップダウンリストを作成しています。年を手動でリストする代わりに、データベースからリストを取得したいと考えています。linq クエリを作成し、年をリストに返しましたが、そのリストを渡されたリストに取得する方法がわかりません。

    public JsonResult PopulateYears()
    {
        var list = new object[] { };

        list = new object[] {
            new { value = 2001, name = "2001" },
            new { value = 2002, name = "2002" },
            new { value = 2003, name = "2003" }
        };

        var results = dbBudget.Estimates.Select(o => o.Year).Distinct().ToList();

        foreach (var result in results)
        {
            //How do I create entries for list here?
        }

        return Json(list);
    }
4

1 に答える 1

1

あなたはそのような無名型を作成することができます

var list = (from x in dbBudget.Estimates.Select(o => o.Year).Distinct()
select new {value=x.Year,name = x.Year});

そして、あなたのラインを使用してください

return Json(list);

結果は

[{"name":"2011","value":"2011"},{"name":"2012","value":"2012"},{"name":"2010","value":"2010"}]
于 2012-08-08T14:43:57.323 に答える