【问题标题】:Use JSON On Webservice [closed]在 Web 服务上使用 JSON [关闭]
【发布时间】:2013-08-29 08:45:09
【问题描述】:

我有一个从网络服务获取数据的 Windows 应用程序。

我需要使用 JSON 从 web 服务发布或获取数据。

最好的方法是什么?在 Web 服务和 Windows 应用程序中?

由于我是 JSON 新手,请用代码示例详细说明。

【问题讨论】:

  • 如果您可以提供更多详细信息、代码类或示例,我相信我们可以提供更详细的答案
  • 我只创建了一个webservice直到现在,我不知道如何使用json从windows应用程序发送请求,如何在webservice中接收它以及如何从webservice获得对windows应用程序的响应

标签: c# .net json web-services


【解决方案1】:

使用Json.NET

您可以从 NuGet 下载并安装它。

要使用它,您需要创建一个与您的 Json 匹配的 C# 模型,然后调用:

string json = "";
MyObject obj = JsonConvert.DeserializeObject<MyObject>(json);

并序列化:

string json = JsonConvert.SerializeObject(new MyObject {});

有关更多示例和说明,请参阅documentation

【讨论】:

  • 安装后如何使用,请详细点?
  • 网上的例子太多了。
【解决方案2】:

作为 Json.Net 的替代方案,您可以使用 WCF,如this 文章中所述。 WCF 是 Microsoft 作为 .Net 的一部分提供的服务框架。

【讨论】:

    【解决方案3】:

    如果没有你的类的 sn-ps 和你想要达到的目标,很难给出例子。

    但是看看你可以在你的网络服务中拥有的这个功能

    using Newsoft.Json;
    
    public JsonResult FunctionName(string JsonString)
    {
        if (JsonString!= null)
        {
            YourObject YourObjectInstance = new YourObject ();
    
            try
            {
                YourObjectInstance = JsonConvert.DeserializeObject<YourObject >(JsonString);
               //do something with the data                
    
               // return a Json response of either your object or another object type
               return Json(YourObjectInstance, JsonRequestBehavior.AllowGet);
            }
            catch
            {
                return new JsonResult();  //return empty JsonResult
            }
            }
            else
            {
                return new JsonResult();  //return empty JsonResult
            }
    
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-29
      • 2011-10-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多