天天看點

.NET 構造Class傳回多個json值

  上次總結使用DataTable傳回多個值,後來看到一個小哥的傳回方式和我的有所不同,便留意了一下。原來他構造一個Class,而我構造的是一個Table。

  首先說說兩者的差別:拿student舉例,student1有學号,姓名,成績,student2,student3...都有該屬性。如果想傳回多個student的資訊,那麼就可以構造一個datatable來進行傳回,如果隻需要傳回student1的資訊則構造一個Class就可以解決。

接下來看代碼:

  在script中寫一個ajax用于接收傳回來的資料,代碼如下。

<script type="text/javascript">
        $(function () {
            $.ajax({
                type:"post",
                url:"ashx/PersonnelRegistrationForm.ashx",
                success:function(data){
                    var datainfo = $.parseJSON(data);
                    alert(datainfo.OrderNo);
                    alert(datainfo.RowGuid);
                    alert(datainfo.ResultNum);
                }
            })
        }) 
    </script>      

   然後在名為PersonnelRegistratinForm一般處理程式進行資料處理,然後構造所需要的值将其傳回。

    public void ProcessRequest(HttpContext context)
        {
            ResultData r = new ResultData();
            r.OrderNo = "WP201711200001";
            r.RowGuid = "{ba16ad7e-9b64-4d77-bba0-b32a69294ae5}";
            r.ResultNum = 1;

            string json = SerializerHelper.ToJsonString(r);
            context.Response.Write(json);
            context.Response.End();
        }       

  構造名為ResultData的class

  public class ResultData
    {
        public string OrderNo { get; set; }
        public string RowGuid { get; set; }
        public int ResultNum { get; set; }
    }      

繼續閱讀