是的,WebService C#可以返回JSON格式的數據。可以使用HttpWebResponse類來設置響應頭部信息以返回JSON數據,并使用Json.NET庫來序列化對象為JSON格式。以下是一個簡單的示例代碼:
using System;
using System.Net;
using Newtonsoft.Json;
public class MyWebService
{
public string GetJsonData()
{
// 創建一個對象
var dataObject = new
{
Name = "John",
Age = 30,
City = "New York"
};
// 將對象序列化為JSON格式
string jsonData = JsonConvert.SerializeObject(dataObject);
// 設置響應頭部信息
HttpContext.Current.Response.ContentType = "application/json";
HttpContext.Current.Response.Write(jsonData);
return null;
}
}
在上面的代碼中,我們首先創建了一個匿名對象dataObject,并使用JsonConvert.SerializeObject方法將其序列化為JSON格式的字符串。然后設置響應頭部信息為"application/json",并將JSON數據寫入響應流中。
注意:上面的示例代碼中使用了HttpContext.Current來獲取當前的Http上下文對象,確保在Web應用程序中使用這段代碼。如果是在WCF服務中使用,可以使用OperationContext.Current來獲取當前操作上下文對象。