7

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

1)有很多 .aspx 文件(包括代码隐藏文件),可能还有一些 .ascx 文件(带有代码隐藏文件。

2)依赖大量的.cs文件(类文件),并让类用Controls.Add()等构造一切。

上面的第一种方法会产生很多 aspx 和 ascx 文件,而 .cs 文件很少。上面的第二种方法会产生大量的 .cs 文件,但会产生非常少的 aspx 和 ascx 文件。

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

4

4 回答 4

2

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

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

另一方面,只要您尝试保持平衡,拥有一些声明性代码也不错。

于 2012-07-26T16:22:45.343 回答
2

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

您可能面临的一个问题是,如果您使用第二种方法,将有更少的开发人员能够拿起您的项目并使用它运行,或者需要更长的时间来加快速度。您会发现更多的开发人员可以轻松地采用第一种方法并继续前进。

于 2012-07-26T16:38:53.240 回答
2

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

于 2012-07-26T16:23:24.977 回答
0

尽可能使用方法一,只有在开箱即用的控件不能为您提供所需的功能时才使用方法二 - 在这种情况下,您可以通过从现有控件继承来创建自定义控件。这不是一个“非此即彼”的场景——您应该明智地使用这两种方法。

于 2012-07-26T16:29:56.387 回答