1

次のクラスからデータを取得しようとしています。

 public class SalesData
    {
        public string RepName { get; set; }

        public string DateString { get; set; }

        public decimal TotalSales { get; set; }

        public decimal RepSales { get; set; }
    }

    public static class SalesDataBuilder
    {
        public static List<SalesData> GetCollection()
        {
            return new List<SalesData>
            {
                new SalesData
                {
                    RepName = "Nancy Davolio",
                    DateString = "Aug 2010",
                    TotalSales = 10458,
                    RepSales = 2015
                },

                new SalesData
                {
                    RepName = "Nancy Davolio",
                    DateString = "Sept 2010",
                    TotalSales = 21598,
                    RepSales = 6003
                },  };
        }

コントローラでJsonを使用して、次のことを試しました。

   public JsonResult IndexJson()
        {
            IEnumerable<SalesData> person = (from e in SalesData

                                                    select new SalesData
                                                {
                                                    RepName = e.RepName,
                                                    RepSales = e.RepSales 
                                                });
            return Json(person);
        }

確かに、私は何か間違ったことをしていて、jsonに非常に慣れていません。私はあなたの提案をいただければ幸いです。前もって感謝します。

4

1 に答える 1

1

あなたのコードはコンパイルさえしません。メソッドを呼び出すことはありませんSalesDataBuilder.GetCollection。このようにしてみてください:

public ActionResult IndexJson()
{
    IEnumerable<SalesData> person = 
        from e in SalesDataBuilder.GetCollection()
        select new SalesData
        {
            RepName = e.RepName,
            RepSales = e.RepSales
        };
    return Json(person, JsonRequestBehavior.AllowGet);
}

JsonRequestBehavior.AllowGetGET動詞を使用してこのアクションを呼び出す場合に必要なJsonメソッドを渡していることに注意してください。

于 2012-04-08T08:42:46.467 に答える