原来上网我下了很多VS2005的ASP.NET 2.0的Demo。而我用的是VS2003,我在使用这些小样时,基本上绝大部分基于VS2003的Asp.net工程都因为少数文件无法转换而无法加载工程,为此我也苦恼很久,后来终于让我找到了解决办法。
源代码在 Web 应用程序的 App_Code 文件夹中的类是自动进行引用的;如果使用了编译组件,则可将它们放在 Bin 文件夹中,以便 Visual Web Developer 自动引用这些组件。IntelliSense 功能收集安装在应用程序的 ASP.NET 2.0 文件夹中的所有组件的信息。有关详细信息,请参见演练:在 Visual Web Developer 中使用网站的共享代码。调试。对于本地网站,包括文件系统网站,具有全部调试功能。与以前的版本相比,调试更为容易也更快速。有关详细信息,请参见演练:在 Visual Web Developer 中调试网页。
ASP.NET 2.0 改进的代码隐藏模型在 Visual Web Developer 的以前版本和本版本之间,一个显著差别是代码隐藏页的工作原理。在 Microsoft Visual Studio .NET 2002 中,创建新的 Web 窗体页之后,Visual Web Developer 会创建含有标记的 .aspx 文件,并为页代码创建单独的 .vb 或 .cs 文件(代码隐藏文件)。代码隐藏文件定义了一个派生自 Page 类的完整类。网页设计器使 .aspx 文件与代码隐藏文件保持同步。例如,如果向 .aspx 文件添加 Web 服务器控件,网页设计器则会在该控件的代码隐藏文件中创建一个相应的实例变量。 #t#
在本版本中,代码隐藏模型利用了称为分部类的新语言功能。页的代码隐藏文件不是一个完整类定义。而是只包含所需的应用程序代码,如事件处理程序。代码隐藏分部类不需要包含实例变量;ASP.NET 2.0 在编译时根据标记推断控件实例。如果正在使用 C# 编写代码,则无需包含事件绑定的显式委托,因为 ASP.NET 2.0 可以根据控件标记中的事件属性(如 onclick)推断出来。在 Visual Basic 中,可以和以前的模型一样,向事件方法的声明添加一条 Handles 子句,以便将该事件绑定到处理程序。较之于以前的模型,新的代码隐藏模型具有如下优点:代码和标记真正分离。
在以前的版本中,标记和代码都存储在单独的文件中。但是,由于以前版本需要使用实例变量和事件委托才能保持文件同步,因此,文件的处理实际上并不是独立进行的。例如,不可能由一名页面开发人员处理页面布局,由另一名开发人员处理代码。在本版本中,上述做法的可行性大大提高。引用控件更为简单。
如前所述,新的代码隐藏模型在代码隐藏页中不需要显式实例变量。尽管以前的版本也管理实例变量,但不是为所有控件(尤其是用户控件或声明为控件的一些 HTML 元素)进行管理。在本版本中,由于不需要任何实例变量,所有控件(包括用户控件)都是隐式引用的。生成的代码更少。
除了类定义本身外,ASP.NET 2.0 新的代码隐藏模型几乎不包含任何生成的代码。代码隐藏中没有任何保留区域可供编辑器改写。除了类定义本身外,新的代码隐藏模型几乎不包含任何生成的代码。代码隐藏中没有任何保留区域可供编辑器改写。