【问题标题】:Examples of practical usage of JSON to and from an ASMX web service via jQuery通过 jQuery 与 ASMX Web 服务交互的 JSON 实际使用示例
【发布时间】:2009-08-19 18:30:33
【问题描述】:

谁能推荐一篇关于向 asp.net Web 服务(任何风格)发送和接收 JSON 的文章,该服务使用比“hello world”更多的实际示例。

理想情况下,涵盖以下主题的内容:

从 Web 服务接收单个复杂对象(以显示在表单中)
从 Web 服务接收复杂对象的集合(以显示在表格中)
将单个复杂对象发送到 Web 服务(用于更新数据库)
将复杂对象的集合发送到 Web 服务(用于更新数据库)

【问题讨论】:

  • 您使用的是 Visual Studio 2005 吗?这就是您使用 ASMX 服务的原因吗?您知道微软现在认为它们是“遗留”技术吗?
  • 我可以选择2008....frick,那么现在推荐什么?

标签: jquery web-services json asmx


【解决方案1】:

我发现this article 过去很有用。它展示了您想看到的大部分内容。希望这会有所帮助!

编辑:SO 上的 question 有一个很好的公认答案,显示了将复杂数据传递给 ASP.NET MVC 控制器方法。 Web 服务在 ASP.NET 中的工作方式类似。他们可以接受来自客户端的带有 JSON 填充的复杂数据类型的参数。您可以用类似的WebMethod 替换控制器方法并返回一个包含所需返回结果的类:

[WebMethod]
public ReturnResult SaveWidget(Widget widget)
{
    // Save the Widget
    return new ReturnResult()
    { 
        Message = String.Format("Saved widget: '{0}' for ${1}", widget.Name, widget.Price) 
    };
}

定义了这个类:

public class ReturnResult
{
    public string Message { get; set; }
}

【讨论】:

  • 不错的文章,但我记得在为 ajax 请求启用缓存时遇到了麻烦
  • 谢谢你,看起来是一篇不错的文章...虽然只从服务器接收数据...任何人有一个很好的例子将修改后的数据发送回服务器?
  • 感谢其他 SO 问题的链接...我不知道,那是 MVC,所以我认为在标准 Web 服务中执行相同的操作可能会有点不同。但是,在您链接的第一篇文章的进一步检查中,在第二个示例中,他们通过传递一个整数来过滤数据……所以,传递一个复杂的对象应该(大声笑)是一个相当简单的变体这。如果我弄清楚了,我会尝试回来并发布结果。
  • 不客气。很高兴我能帮助你。确实,ASP.NET MVC 中的控制器方法和标准 ASP.NET 中的 webservice 方法之间存在差异,但是如果您按照我的示例方式编写代码,它的功能将相似。
  • -1:不从 Web 服务返回对象。返回一个特定的命名类型。特别是,不要返回匿名类型。这样做会强制客户端解析 XML,而不是使用合理的类。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-29
  • 1970-01-01
  • 1970-01-01
  • 2017-01-23
  • 2010-12-02
  • 2018-02-14
  • 1970-01-01
相关资源
最近更新 更多