65.9K
CodeProject 正在变化。 阅读更多。
Home

将 ASP.NET AJAX 添加到现有的 ASP.NET 应用程序

starIconstarIconstarIcon
emptyStarIcon
starIcon
emptyStarIcon

3.83/5 (11投票s)

2007 年 11 月 20 日

CPOL

2分钟阅读

viewsIcon

107442

如何使现有的 ASP.NET 应用程序像 ASP.NET AJAX 应用程序一样工作。

引言

ASP.NET AJAX 使您能够轻松利用 AJAX 技术,并使您能够创建 ASP.NET 页面并充分利用浏览器的功能,从而提供更丰富的 Web 体验,该体验适用于任何现代浏览器。

如何使用 ASP.NET AJAX 升级现有的 ASP.NET 2.0 网站应用程序?

您可以通过添加对 ASP.NET AJAX 程序集的引用来将 ASP.NET AJAX 功能添加到应用程序中。 您可以通过右键单击项目文件夹,然后选择“添加引用”来实现此目的,然后从“.NET”选项卡中选择程序集 System.Web.Extensions;或者,您可以在 web.config 文件的 Assemblies 部分中注册它,如下所示

Assemblies 元素

<system.web>
 <compilation>
   <assemblies>
    <add assembly="System.Web.Extensions, Version=1.0.61025.0, 
                   Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
   </assemblies>
 </compilation>
</system.web>

当您添加对该程序集的引用时,它将被添加到您的 Web 应用程序的 Web.config 文件中。 下面的 controls 元素在 System.Web.Extensions 程序集中注册 ASP.NET AJAX 命名空间,然后将 ASP.NET AJAX 程序集中的控件与标签前缀 asp 关联。 可以使用以下语法在网页中引用 ASP.NET AJAX 命名空间中的控件

<system.web>
 <Pages>
  <Control>
   <add tagPrefix="asp" namespace="System.Web.UI" 
      assembly="System.Web.Extensions, Version=1.0.61025.0, 
                Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
  <Control>
 <Pages>
<system.web>

然后,我们将现有的 ASP.NET 验证服务器控件重新映射到新的 ASP.NET AJAX 验证控件。

您必须定义希望 ASP.NET AJAX 使用的 HTTP 处理程序和模块。httpHandlers 元素为脚本请求添加新的处理程序。

<system.web>
 <httpHandlers>
  <remove verb="*" path="*.asmx"/>
   <add verb="*" path="*.asmx" validate="false" 
      type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, 
            Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
   <add verb="*" path="*_AppService.axd" validate="false" 
      type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, 
            Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/s> 
   <add verb="GET,HEAD" path="ScriptResource.axd" 
      type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, 
            Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
      validate="false"/>
 </httpHandlers>
</system.web>

以下是 HttpModules 元素

<system.web>
<httpModules>
<add name="ScriptModule" 
  type="System.Web.Handlers.ScriptModule, System.Web.Extensions, 
        Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</httpModulesb>
</system.web>

您还可以添加一些额外的设置来配置 IIS 7 行为、JSON 序列化、ASP.NET 身份验证和配置文件服务访问。您可以通过向 web.config 文件添加另一个配置来完成所有这些操作。生成的 Web.config 文件包含此额外配置的示例。

然后,您必须将脚本管理器控件添加到网站,并且在构建 Web 应用程序时,放置脚本管理器的最佳位置是在母版页中,以便所有网页都可以使用。注意:您可以通过提取现有的 ASP.NET AJAX web.config 文件的 Web.Config 并添加标签前缀来实现此目的。

我希望您喜欢这篇文章。

© . All rights reserved.