Web Service中关于传值json的一点小疑点
Web Service中关于传值json的一点小问题
我写了一个web sevice用于查询。代码如下:
我写了一个web sevice用于查询。代码如下:
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Services;
#region 命名空间
using Newtonsoft.Json;
#endregion
namespace WebService3
{
/// <summary>
/// PersonalServices 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
public class PersonalServices : System.Web.Services.WebService
{
#region 获取用户信息
[WebMethod]
public void GetUserList(string userName)
{
List<Personal> m_PersonalList = new List<Personal>();
string[] strArr = userName.Split(',');
foreach (string item in strArr)
{
Personal m_Personal = GetUserByName(item);
if (m_Personal != null)
{
m_PersonalList.Add(m_Personal);
}
}
ResponseResult responseResult = new ResponseResult();
if (m_PersonalList.Count == 0)
{
responseResult.ResponseDetails = "没有查询到此用户!";
responseResult.ResponseStatus = 0;
}
else
{
responseResult.ResponseData = m_PersonalList;
responseResult.ResponseDetails = "查询信息成功!";
responseResult.ResponseStatus = 1;
}
string jsoncallback = HttpContext.Current.Request["jsoncallback"];
//返回数据的方式
// 其中将泛型集合使用了Json库(第三方序列json数据的dll)转变成json数据字符串
string result = jsoncallback + "(" + JsonConvert.SerializeObject(responseResult, Formatting.Indented) + ")";
HttpContext.Current.Response.Write(result);
HttpContext.Current.Response.End();
}
#endregion
#region 模拟数据库处理结果
/// <summary>
/// 根据用户名查询用户
/// </summary>
/// <param name="userName">用户名</param>
/// <returns></returns>
Personal GetUserByName(string userName)
{
List<Personal> m_PersonalList = new List<Personal>();
m_PersonalList.Add(new Personal()
{
Id = "01",
Name = "cs",