对应用程序的更改
由于 ASP.NET 2.0 应用程序没有项目文件,因此必须移动对外部程序集的引用。
gac 引用被移到 web.config 文件中。例如: <system.web><compilation><assemblies><add assembly="EnvDTE, Version=8.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/></assemblies></assemblies> Other tags</compilation> Other tags</system.web> 对 GAC 中的程序集的 web.config 引用 | |
p2p 引用存储在解决方案文件中。在转换过程中,如果解决方案中的所有项目同时转换,则 P2P 引用将保持为 P2P。 | |
在 Visual Studio 2005 的 Beta 2 版中,本地引用的程序集不可更新。在 Visual Studio 2005 的最终版本中,通过添加 Refresh 文件修复了此行为。此文件存储在 bin 目录下,其文件名采用程序集名称加上“.refresh”的方式来生成。Refresh 文件包含指向外部引用的程序集的路径,其存在向编译器指明,如果原始程序集的时间戳时间较晚,则需要刷新此程序集及其依赖的程序集。这与 Visual Studio .NET 2003 中的“复制本地”行为相似。 |
以 P2P 和本地方式引用的程序集都被复制到 Bin 目录下。
Web 引用
与常规引用不同,web 引用指向 Web 服务。在 Visual Studio .NET 2003 中,当您在 ASP.NET 1.x 应用程序中创建了 Web 引用后:
1. | 就在该应用程序的 Web References 目录下创建了一个目录 |
2. | 就创建了一个引用类,其中包含 Web 服务的 WSDL 中为每个对象定义的代理类。 |
3. | 就创建了一个名为 reference.map 的 discovery 文件,其中包含有关如何创建和更新 Web 引用的信息。 |
asp.net 2.0 更改了此过程以构成新的目录结构以及 Web 服务在 .NET Framework 2.0 中的处理方式的一些更改。
对应用程序的更改
转换向导将在下列几个方面对应用程序进行更新:
将所有 Web 引用目录从 Web References 目录移到 App_WebReferences 目录下。 | |
在 App_Code 目录下放置 WSDL 文件的一个副本。WSDL 文件的版本提供程序将自动生成 Web 服务代理类,这些代理类已编译,并且可通过任何 Web 页面访问,因为它们存储在 App_Code 目录下。 | |
删除由 Visual Studio .NET 2003 生成的代理类。旧的 1.x 代理类不再是必需的,因为这些代理现在可在 App_Code 目录下自动生成。 | |
将 discovery 文件的扩展名 .map 更改为 .discomap。 |
Web 服务
在 ASP.NET 1.x 中,Web 服务 (.asmx) 自动拆分到空白标题页面 (.asmx) 和包含实际方法的代码分离文件中。
对应用程序的更改
转换向导将在下列几个方面对应用程序进行更新:
将代码分离类移到 App_Code 目录下,以便使其自动变为可通过应用程序中的任意 ASP.NET 页面访问。 | |
更改 .asmx 文件中的 CodeBehind 属性,以便指向新位置。(请注意,代码分离文件不使用局部类,因此继续使用 CodeBehind 属性。) | |
将所有的默认、friend 和 Internal 范围的声明更改为 Public。 |
Global.Asax
在任一 ASP.NET 应用程序中,您都可以使用 Global.asax 文件捕获特定的应用程序级事件,包括启动、关闭、会话周期、请求周期和错误消息。此文件与 Web 服务文件十分相似,它具有简单的 shell 标题页面 (.asax) 和代码分离文件。
对应用程序的更改
转换向导将在下列几个方面对应用程序进行更新:
将代码分离文件移到 App_Code 目录下,以便使其自动变为可通过应用程序中的任意 ASP.NET 页面访问。 | |
“code-behind”属性将从 ASAX 文件的指令中删除。 | |
(对于 Visual Basic)向该类文件中添加一条命名空间语句。命名空间由 Web 项目中的根命名空间定义。 |
数据集
在