我是 JSON 的新手,我正在尝试在 c#中创建一个Web服务( .asmx ),它将返回具有键和值的JSON对象。我正在为我的 Android应用之一创建此网络服务,为什么必须使用键返回 JSON 对象及其值即可。以下是我的网络服务代码:
using System;
using System.Collections;
using System.Linq;
using System.Text;
using System.Json;
using System.Web.Services;
using System.Runtime.Serialization.Json;
using System.Web.Script.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.IO;
using System.Web.Script.Services;
using System.Collections.Generic;
namespace WebServiceExample
{
/// <summary>
/// Summary description for AddTwoNumbers
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
//[System.Web.Script.Services.ScriptService]
public class AddTwoNumbers : System.Web.Services.WebService
{
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string Add(int a, int b)
{
// 1st way to return Key and Value
JsonObject jso = new JsonObject();
JsonValue jv1 = 1;
JsonValue jv2 = 2;
jso.Add("Key-1", jv1.ToString());
jso.Add("BoolValue", jv2.ToString());
JavaScriptSerializer js = new JavaScriptSerializer();
string strJSON = js.Serialize(jso);
return strJSON;
}
}
}
使用上面的代码我得到以下输出:
请点击上面的链接查看我的输出。
正如你所看到的,我得到的是钥匙而不是价值。我被卡住了。
请帮忙。感谢
编辑:如果我的方式有误,请建议我在 JSON 对象中添加键和值的正确方法。我在谷歌搜索了很多但无法正确理解。
任何快速帮助
更新:
public string GetPeople()
{
Dictionary<string, string> dict = new Dictionary<string, string>();
dict.Add("Key-1", "value-1");
dict.Add("Key-2", "value-2");
dict.Add("Key-3", "value-3");
JavaScriptSerializer js = new JavaScriptSerializer();
string strJSON = js.Serialize(dict);
return strJSON;
}