我如何 [简单地] 在业务线 Web 应用程序中使用 JSON 数据

Posted

技术标签:

【中文标题】我如何 [简单地] 在业务线 Web 应用程序中使用 JSON 数据【英文标题】:How can I [simply] consume JSON Data in a Line of Business Web Application 【发布时间】:2011-02-10 17:25:39 【问题描述】:

我通常使用带有 jQ​​uery 的 JSON 来返回一个带有 html 的字符串。但是,我想开始在我的代码中使用 javascript 对象。

在我的页面上开始使用 json 对象的最简单方法是什么?

这是一个示例 Ajax 调用(当然是在 $(document).ready( ... ) 之后:

 $('#btn').click(function(event) 
     event.preventDefault();
     var out = $('#result');
     $.ajax( url: "CustomerServices.asmx/GetCustomersByInvoiceCount",
          success: function(msg) 
             // 
             // Iterate through the json results and spit them out to a page?
             // 
          ,
                data: " 'invoiceCount' : 100 "
     );
 );

我的网络方法:

[WebMethod(Description="Gets customers with more than n invoices")]
public List<Customer> GetCustomersByInvoiceCount(int? invoiceCount) 
    using (dbDataContext db = new dbDataContext()) 

        return db.Customers.Where(c => c.InvoiceCount >= invoiceCount);
    

返回什么:

"d":["__type":"Customer","Account":"1116317","Name":"SOME COMPANY","Address":"UNit 1             , 392 JOHN ST.                            ","LastTransaction":"\/Date(1268294400000)\/","HighestBalance":13922.34,"__type":"Customer","Account":"1116318","Name":"ANOTHER COMPANY","Address":"UNIT #345             , 392 JOHN ST.                            ","LastTransaction":"\/Date(1265097600000)\/","HighestBalance":549.42]

我想知道的是,人们通常用这个返回的 json 做什么?您是否遍历属性并动态创建 html 表?

有没有办法使用 javascript 版本的反射(类似于 .Net GridView 控件)“绑定”JSON 数据

您是否将返回的数据放入 Javascript 对象中,然后对其进行处理?

我想要实现的一个示例是拥有一个普通的 html 页面(在移动设备上),其中包含销售人员的客户列表。当其中一个客户被点击时,客户 ID 会被发送到 Web 服务,该服务会检索与销售人员相关的客户详细信息。

我知道 SO 人才库非常丰富,所以我认为在座的各位能够指导正确的方向,并就解决此问题的最佳方法给我一些想法。

【问题讨论】:

【参考方案1】:

我建议您查看可用的各种客户端模板解决方案。甚至还有关于与下一个 jQuery 版本 here 集成的讨论。

我更喜欢jTemplate,因为它简单且体积小。但还有其他人。如果您想查看它的实际效果,请查看我们的客户网站之一here。 我们发现它甚至可以很好地扩展到大量行 (>1000)。

【讨论】:

感谢您的示例网站!看起来您也绑定到 WCF 服务。比起 SOAP,您更喜欢它们? 实际上同样的 WCF 服务也暴露了一个 SOAP/XML 端点。但这仅适用于后台服务。前端的流量开销非常大(10 倍)。由于我们每小时运行 100k+ 个请求,这简直无法忍受,而且在 jquery 中处理 rest + json 更简单。我们肯定会以这种方式再做一次。 有趣。老实说,我一直在考虑改用 WCF,但我还没有花时间去了解 WCF。 我绝对建议您看一下,只要您掌握了窍门,就可以通过简单地修改端点配置来更改格式。老实说,要让 REST 接口正常工作,必须在代码中添加一些额外的属性,但这在 .NET 4 中变得更加直观,同时 WCF 的配置问题也随着良好的跟踪能力而大大减少。跨度>

以上是关于我如何 [简单地] 在业务线 Web 应用程序中使用 JSON 数据的主要内容,如果未能解决你的问题,请参考以下文章

在 Rails 中使 TimeWithZone 对象变得惰性

如何在使用 Angular 7 和 Spring Boot 构建的 Web 应用程序中使浏览器缓存无效

在Android中使App高速简单地支持新浪微博微信QQfacebook等十几个主流社交平台的分享功能

如何在打字过程中使文本框旋转 90(垂直)?

如何在控制器方法中使 JWT 令牌授权可选

干货 | 30+条业务线,携程微信小程序如何协同开发