ASP.NET MVC LESSON 2 return Json data โดยเราสามารถกำหนดการ return ค่าเป็นแบบ string หรือ Array Object ได้ดังภาพ

ในส่วนของ Controller ปกติจะ return View(); ให้ return Json(data,JsonRequestBehavior.AllowGet);
Json จากภาพด้านบนจะมีการส่งค่ากลับสามแบบ
แบบที่ 1
status = “0”,
statusTextTH = “ไม่ผ่าน”,
statusTextEN= “fail”,
แบบที่ 2
summary=new
{
obtainAct=15,
obtainHour=37,
criteriaAct=30,
criteriaHour=120}
แบบที่ 3
จะต้องทำ Array เพราะสังเกตุว่าจะมี […..] ครอบ data ไว้อยู่ ให้สร้าง array ขึ้นมา
1) เริ่มจากสร้างตัวแปร
public class criteriaListArr
{
public String nameTH { get; set; }
public String nameEN { get; set; }
public int obtain { get; set; }
public int criteria { get; set; }
}
2) จากนั้นให้สร้าง ArrayList
public List GetcriteriaListArr()
{
var res = new List()
{
//case 1
new criteriaListArr()
{
nameTH = “กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 10 กิจกรรม”,
nameEN = “กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 10 กิจกรรม”,
obtain =8,
criteria=10
},
//case 2
new criteriaListArr()
{
nameTH = “กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 120 ชั่วโมง”,
nameEN = “กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 120 ชั่วโมง”,
obtain =50,
criteria=120
},
//case 3
new criteriaListArr()
{
nameTH = “กิจกรรมพัฒนานักศึกษาสู่การเป็นบัณฑิตพึงประสงค์ ครบ 5 ด้าน”,
nameEN = “กิจกรรมพัฒนานักศึกษาสู่การเป็นบัณฑิตพึงประสงค์ ครบ 5 ด้าน”,
obtain =4,
criteria=5
}};
return res;
}
3) แล้วขั้นตอนการเรียกใช้ให้เรียกใช้โดยกำหนดตัวแปรเท่ากับ ArrayList ที่สร้าง
criteriaList = GetcriteriaListArr()
Code หน้า Controller ทั้งหมด
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace MobileWS.Controllers
{
public class ActivityTranscriptController : Controller
{
public class criteriaListArr
{
public String nameTH { get; set; }
public String nameEN { get; set; }
public int obtain { get; set; }
public int criteria { get; set; }
}
// GET: ActivityTranscript
[Route("ActivityTranscript/index/{studentcode?}")]
public ActionResult Index(string studentcode)
{
ViewBag.StudentCode = studentcode;
return Json(
new
{
status = "0",
statusTextTH = "ไม่ผ่าน",
statusTextEN= "fail",
summary=new
{
obtainAct=15,
obtainHour=37,
criteriaAct=30,
criteriaHour=120
},
criteriaList = GetcriteriaListArr()
}, JsonRequestBehavior.AllowGet
);
// return View();
}
public List<criteriaListArr> GetcriteriaListArr()
{
var res = new List<criteriaListArr>()
{
//case 1
new criteriaListArr()
{
nameTH = "กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 10 กิจกรรม",
nameEN = "กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 10 กิจกรรม",
obtain =8,
criteria=10
},
//case 2
new criteriaListArr()
{
nameTH = "กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 120 ชั่วโมง",
nameEN = "กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 120 ชั่วโมง",
obtain =50,
criteria=120
},
//case 3
new criteriaListArr()
{
nameTH = "กิจกรรมพัฒนานักศึกษาสู่การเป็นบัณฑิตพึงประสงค์ ครบ 5 ด้าน",
nameEN = "กิจกรรมพัฒนานักศึกษาสู่การเป็นบัณฑิตพึงประสงค์ ครบ 5 ด้าน",
obtain =4,
criteria=5
}
};
return res;
}
}
