c# - 使用页面方法、Web 服务和自定义 http 处理程序执行 ajax 之间的区别

标签 c# asp.net ajax

我希望在客户端中创建 json 对象,然后将这些对象传回服务器进行处理。这些是我正在考虑的以下选项:

  • 一个页面方法

  • 网络服务

  • 自定义 HTTP 处理程序

我希望使用 jquery 发送对象。计划是将 json 对象转换为 c# 对象,这些对象又进入查询。在处理过程中,我需要访问在 SQL Server session 模式下工作的用户 session 。运行这些调用的页面将位于 https 上。返回对象也将是 json 对象。我会考虑可伸缩性、安全性和性能。

我想知道使用每个选项的优缺点是什么。

感谢您的建议。

最佳答案

这是我的偏好顺序:

  • 网络服务
  • httpHandler(asp.net 网络服务是幕后的 httpHandlers)
  • 页面方法

Web服务赋予了最大的灵 active 和可扩展性。 ASP.Net web服务实际上是符合XML/SOAP标准的HttpHandlers。

页面方法最不灵活。它们最适合一段 javascript 与 aspx 页面之间的一次性通信。即使那样,您也有更好的方法来处理它,而不是通过页面方法。

以下是使用网络服务的一些好处:

  • 基于标准
  • 在系统之间提供松耦合
  • 可以轻松扩展
  • 提供更高的安全性,因为您可以在多个级别(授权、身份验证方面)实现安全性

关于c# - 使用页面方法、Web 服务和自定义 http 处理程序执行 ajax 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6604050/

相关文章:

ajax - 类似谷歌日历的界面

jquery - 无法获得 jquery 表单验证来注册 $.post 元素

jquery - 如何使用具有100000条记录的DataTables?

c# - 带换行符的查询无法在 PowerShell 中执行

c# - 使用 Javascript 更改级联 DropDownList 值时 MVC 模型中断

asp.net - jQuery UI 确认对话框和 asp.net 回发

asp.net - 创建ASP.NET成员资格提供程序用户的脚本

c# - Google Calendar API v3 - 在服务器上部署时请求超时

c# - 单击按钮后的 ASP.NET gridview 控件 rowCreated 函数

c# - 如何使用ajax将枚举值传递给 Controller ​​?