如何设置JSON对象以结果开始.. Net MySQL JSON Restful Webservice

本文关键字:JSON 开始 结果 Net MySQL Webservice Restful 对象 何设置 设置 | 更新日期: 2023-09-27 18:05:03

我遵循这个创建Restful Web服务,显示JSON作为MySQL数据库的输出。

我成功地做到了,但这里我有将近100个表在数据库中不同的名称

for get Data I am Using this:

ServiceContract]
public interface IService1
{
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, BodyStyle =    WebMessageBodyStyle.Wrapped, UriTemplate = "getAllCustomers")]
List<wsCustomer> GetAllCustomers();

和this:

public class Service1 : IService1
{
 public List<wsCustomer> GetAllCustomers()
{
NorthwindDataContext dc = new NorthwindDataContext();
List<wsCustomer> results = new List<wsCustomer>();
foreach (Customer cust in dc.Customers)
{
    results.Add(new wsCustomer() { 
        CustomerID = cust.CustomerID,
        CompanyName = cust.CompanyName,
        City = cust.City
    });
}
return results;
}

我得到这样的数据输出:

{
    "CustomerResult": [
        {
            "CustomerID ": "12124",
            "CompanyName ": "http://www.google.com",
            "City ": "xyz"
        }
    ]
}

但这里的问题列表为每一个结果我得到表名结果就像我有另一个表

{
    "UserResult": [
        {
            "UserID ": "12124",
            "CompanyName ": "http://www.google.com",
            "City ": "xyz"
        }
    ]
}

所以这里不是CustomerResultUserResult我希望它是Result

是否有办法将它显示为所有表的结果?

Please Suggest Me.

如何设置JSON对象以结果开始.. Net MySQL JSON Restful Webservice

您可以使用类似map的结构来实现这一点。我对。net不太确定,但是在java中我们是这样做的:

    Map<String,Object> resultMap = new HashMap<String,Object>();
    resultMap.put("result","customerList");
    resultMap.put("status","success");

也可以使用Map。根据我的理解,在你的情况下,它是返回表名作为关键,因为你的方法是直接返回列表。json格式需要一个键

我已经尝试在JAVA使用地图,

public List<wsCustomer> GetAllCustomers()
            {
                NorthwindDataContext dc = new NorthwindDataContext();
                List<wsCustomer> results = new List<wsCustomer>();
                foreach (Customer cust in dc.Customers)
                {
                    results.Add(new wsCustomer() {
                        CustomerID = cust.CustomerID,
                        CompanyName = cust.CompanyName,
                        City = cust.City
                    });
                }
                Map<String,List<wsCustomer>> resultMap = new HashMap<String,List<wsCustomer>>();
                resultMap.put("result",results);
                return resultMap;
            }