WebMethod以JSON格式返回值
如何将Webmethod的值以JSON格式返回给客户端?
我要返回两个静态int值。
我是否需要使用这两个属性创建新对象并返回它?
GetStatus()方法经常被调用,我不喜欢每次仅用于json格式创建一个特殊对象的想法。
[WebMethod]public static int GetStatus()
{
int statusProcess,statusProcessTotal;
Status.Lock.EnterReadLock();
statusProcess=Status.Process; //Static field
statusProcessTotal=Status.ProcessTotal; //Static field
Status.Lock.ExitReadLock();
return ...
}
在客户端,我在捕获返回值:
function OnSucceeded(result, userContext, methodName) (PageMethods.GetStatus(OnSucceeded, OnFailed);)
回答:
我只想带一个物体。它符合您的需求。如果您有两个返回值,则必须以结构化的方式将它们放在一起。
public class StatusResult {
public int StatusProcess { get; set; }
public int StatusProcessTotal { get; set; }
}
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public StatusResult GetStatus()
{
int statusProcess,statusProcessTotal;
//Status.Lock.EnterReadLock();
statusProcess = 5;
statusProcessTotal = 1; //Static field
var result = new StatusResult();
result.StatusProcess = statusProcess;
result.StatusProcessTotal = statusProcessTotal;
return result;
}
以上是 WebMethod以JSON格式返回值 的全部内容, 来源链接: utcz.com/qa/411715.html