ASP.NET Webforms项目结构的最佳实践

时间:2012-07-26 16:18:03

标签: asp.net webforms

使用ASP.NET webforms时,我看到了构建项目的两种主要方法:

1)有很多.aspx文件(包括文件背后的代码)和一些.ascx文件(代码隐藏在文件后面。

2)依靠很多.cs文件(类文件),并让类使用Controls.Add()等构建所有内容。

上面的第一种方法会导致很多aspx和ascx文件以及很少的.cs文件。上面的第二种方法产生了很多.cs文件,但是aspx和ascx文件却少得多。

是否有“最佳实践”方式来构建项目? Microsoft会推荐这些技术之一吗?是否有关于两种风格中哪一种更常用的信息?

4 个答案:

答案 0 :(得分:3)

如果您还没有这样做,请查看ASP.NET MVC。如果您不能选择MVC,则可以使用ASP.NET WebForms实现MVP pattern。这两种模式提供了分离表示,模型和路由的好方法。

答案 1 :(得分:2)

我会坚持第一种方法。一些控件非常繁琐(或难以)以创建方式创建。

GridViewListView为例,使用GridView创建一个* .aspx页面,其中包含带模板列的自定义模板。然后运行你的应用程序,在ASP.NET临时目录中找到* .dll,反编译该类,看看代码是多么混乱和复杂。随着时间的推移和/或进行更改将非常难以维持。

另一方面,只要你试图保持平衡,拥有一些声明性代码并不坏。

答案 2 :(得分:2)

这两种方法都没有错。您使用哪一个取决于个人偏好,可行性和要求。

您可能面临的一个问题是,如果您使用第二种方法,开发人员将能够获取项目并运行它,或者需要更长时间才能快速掌握项目。你会发现更多的开发人员可以轻松地选择第一种方法并继续使用。

答案 3 :(得分:0)

尽可能使用方法一,只有当开箱即用的控件没有为您提供所需的功能时才采用方法二 - 您可以通过继承现有控件来创建自定义控件。这不是“两种情况” - 你应该明智地使用这两种方法。