我已将 MS Visual Studio 应用程序从 VS 2003 升级到 VS 2008(针对 .NET 2.0)。作为转换过程的一部分,向导说我需要采取额外的步骤,通过右键单击将我的项目转换为网站,等等等等......

我没有遵循指示,但网络应用程序似乎运行良好。

我的问题是,我应该担心将其推送到生产系统吗?这里究竟发生了什么?

有帮助吗?

解决方案

ASP.NET 中有两种类型的 Web 应用程序:网站和 Web 应用程序项目。这里讨论两者之间的区别:

Visual Studio 2005 中网站和 Web 应用程序之间的区别

转换为网站允许您将 Web 应用程序项目转换为网站。

Visual Studio 2003使用Web应用程序项目风格,但最初VS2005仅支持网站。VS2005 SP1 恢复了 Web 应用程序。

如果您不想将项目转换为网站,请在使用 VS2005 的情况下应用 SP1。VS2008 都可以支持。

其他提示

转换为网站会将所有控件声明从主页面类移动到辅助文件 (yourpage.aspx.designer.cs)。

它通过使用分部类来做到这一点。也就是说,您的页面具有相同的类,但分为两个单独的文件。

这允许 VS2k5(和 VS2k8)设计器为您的页面生成代码,而无需将生成的代码意大利面转储到主类文件中。

您不需要执行此步骤来构建项目,但如果您继续维护该项目,您也会需要这样做。

编辑:

嘿,看,MSDN 支持我:

将代码转换为使用分部类模型

  1. 确保代码编译没有错误。
  2. 在“解决方案资源管理器”中,右键单击项目名称,然后单击“转换为 Web 应用程序”。此命令循环访问项目中的每个页面和用户控件。它将所有控件声明移动到.designer.cs 或designer.vb 文件中。它还将事件处理程序声明添加到 .aspx 和 .ascx 文件中的服务器控件标记中。
  3. 该过程完成后,检查“任务列表”窗口以查看是否报告任何转换错误。
  4. 如果任务列表显示错误,请右键单击“解决方案资源管理器”中的相关页面,然后选择“查看代码”和“查看代码生成文件”以检查代码并修复问题。
  5. 重新编译该项目以确保其编译没有错误。

ASP.NET 中有两种类型的 Web 应用程序:网站和 Web 应用程序项目。转换为网站允许您将 Web 应用程序项目转换为网站。

据我所知,转换为网站不会执行此操作,Web 应用程序项目是一个常规应用程序结构,具有典型的 \bin 等。

相反,WebSite 项目基于类的 App_Code 目录和数据的 App_Date 目录的概念,您的常规 ASPX 文件可以存放在任何地方。这个想法是为了避免在部署之前预编译成 DLL,这在某些共享托管情况下会更容易。

我不知道有任何向导可以在这些类型之间重组项目,但我可能是错的。

您可能错过的唯一一件事是您是否想要备份 2003 年的项目(以防万一)。没什么大不了的。

查看:
将 Visual Studio .NET 2003 Web 项目转换为 Visual Studio Web 应用程序项目

Visual Studio 转换向导

转换为网站会将所有控件声明从主页面类移动到辅助文件 (yourpage.aspx.designer.cs)。

我为什么要这样做?每个页面都有一个 .js .css .vb .aspx 文件就已经够糟糕的了。我真的需要将 .vb 分成另外两个文件,以便隐藏声明吗?page.designer.aspx.vb.h 有人吗?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top