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

ASP.NET Webforms项目结构的最佳实践,asp.net,webforms,Asp.net,Webforms,使用ASP.NET webforms时,我看到两种主要的项目结构方式: 1) 有很多.aspx文件(包括代码隐藏文件)和一些.ascx文件(带有代码隐藏文件) 2) 依赖大量的.cs文件(类文件),并让类使用控件.Add()等构造所有内容 上面的第一种方法会产生大量的aspx和ascx文件,而很少有.cs文件。上面的第二种方法会产生大量的.cs文件,但aspx和ascx文件却很少 是否有一种“最佳实践”的方式来组织项目?微软是否推荐这些技术之一?有关于这两种风格中哪一种更常用的信息吗?我坚持第一

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

1) 有很多.aspx文件(包括代码隐藏文件)和一些.ascx文件(带有代码隐藏文件)

2) 依赖大量的.cs文件(类文件),并让类使用控件.Add()等构造所有内容

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


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

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

GridView
ListView
为例,使用GridView创建一个*.aspx页面,该页面具有带有模板列的自定义模板。然后运行应用程序,在ASP.NET temp目录中找到*.dll,对类进行反编译,看看代码有多凌乱和复杂。随着时间的推移,很难对其进行维护和/或进行更改


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

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

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

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


您可能面临的一个问题是,如果您使用第二种方法,那么能够拿起您的项目并运行它的开发人员将减少,或者需要更长的时间才能跟上进度。您将发现更多的开发人员可以轻松地选择第一种方法并开始使用。

非常固执己见的问题,恐怕这根本不适合。。。这里没有明确的答案,因为在构建项目时没有最佳实践。。。可能会有一些指导方针或建议,但最终决定权总是在你身上。采用你觉得最舒服的方法。我建议先读一读这篇文章——看一看