通过ajax + webmethod或传统的代码隐藏获取数据?

时间:2015-03-03 11:29:06

标签: asp.net

我将从数据库中显示产品详细信息。但我无法决定是否在返回JSON字符串的WebMethod中使用$ .ajax帖子,或者在代码隐藏中使用带有sqldatareader的传统Page.Load。

我知道如何做到这两点,编码不是问题。我想知道什么会更快更安全?

2 个答案:

答案 0 :(得分:1)

这取决于您在页面上显示的数据类型。 (更多的是有多少数据)

假设您显示的是固定数量的数据,例如摘要,产品详细信息,那么最好从服务器端获取数据并在页面加载事件中绑定标签。

但是,如果您要显示项目列表(可能因用户输入而异),例如产品列表,订单列表,员工列表。在这种情况下,使用ajax获取行是一件好事。原因是在页面上显示固定的行数(比方说10),并且应该有一个跳转到下一个/前一页的分页。现在,当用户单击下一个或上一个时,它不应回发页面,并应使用ajax获取行。

答案 1 :(得分:1)

每种方法都有其优点和缺点。

AJAX的优缺点

<强>优点:

  • 强制您将代码中的问题分开一点,您将收集数据并在不同的地方显示数据
  • 由于这种额外的模块化,代码将更易于测试

<强>缺点:

  • 由于额外的HTTP请求而变慢
  • 更难处理后退按钮和书签
  • 由于html
  • 中的数据不正确,搜索引擎优化将更加困难