[ASP.NET] Web Services 如何回傳 JSON

[ASP.NET] Web Services如何回傳JSON

JSON這個格式越來越多人使用, 這次因為專案的需求, 所以Study了一下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Script.Services;
using System.Web.Script.Serialization;

/// <summary>
/// GreenPower 的摘要描述
/// </summary>
[WebService(Namespace = "http://TEST.COM.TW/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// 若要允許使用 ASP.NET AJAX 從指令碼呼叫此 Web 服務,請取消註解下一行。
[System.ComponentModel.ToolboxItem(false)]
[System.Web.Script.Services.ScriptService]
public class GreenPower : System.Web.Services.WebService {
  
    [WebMethod]
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    public string InfoTableJSON()
    {
        GreenPowerDataContext DB = new GreenPowerDataContext();

        var qryGPLog = from GPLog in DB.tbGPLog_InfoTable
                       select GPLog;               

        return new JavaScriptSerializer().Serialize(qryGPLog);

    }

透過LINQ TO SQL的搭配, 可以輕易的回傳JSON格式, 但JSON比較麻煩的是DateTime的型態處理, 這部分仍然需要好好研究