我已将 MS Visual Studio 应用程序从 VS 2003 升级到 VS 2008(面向 .NET 2.0)。作为转换过程的一部分,向导说我需要采取额外的步骤,通过右键单击将我的项目转换为网站,等等等等。
我没有按照指示进行操作,Web 应用程序似乎运行良好。
我的问题是,我应该担心将其推送到生产系统吗?这里到底发生了什么?
我已将 MS Visual Studio 应用程序从 VS 2003 升级到 VS 2008(面向 .NET 2.0)。作为转换过程的一部分,向导说我需要采取额外的步骤,通过右键单击将我的项目转换为网站,等等等等。
我没有按照指示进行操作,Web 应用程序似乎运行良好。
我的问题是,我应该担心将其推送到生产系统吗?这里到底发生了什么?
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 支持我:
将代码转换为使用部分类模型
ASP.NET 中有两种类型的 Web 应用程序:网站和 Web 应用程序项目。转换为网站允许您将 Web 应用程序项目转换为网站。
据我所知,转换为网站不会这样做,Web 应用程序项目是一个常规的应用程序结构,具有典型的 \bin 等。
相反,WebSite 项目基于类的 App_Code 目录和数据的 App_Date 目录的概念,您的常规 ASPX 文件可以放在任何地方。这个想法是避免在部署之前必须预编译成 DLL,这在某些共享主机情况下会更容易。
我不知道有任何向导会在这些类型之间重组项目,但我可能错了。
您可能错过的唯一一件事是您是否要备份 2003 年的项目(以防万一)。这没什么大不了的。
查看:
将 Visual Studio .NET 2003 Web 项目转换为 Visual Studio Web 应用程序项目
转换为网站将所有控件声明从主页类移动到辅助文件 (yourpage.aspx.designer.cs)。
我为什么要这样做?每个页面都有一个 .js .css .vb .aspx 文件已经够糟糕了。我真的需要将 .vb 拆分为另外两个文件以便隐藏声明吗?page.designer.aspx.vb.h 有人吗?