Asp.net 优点/缺点.NET形成一页静态网站,有30个+;嵌套用户控件?

Asp.net 优点/缺点.NET形成一页静态网站,有30个+;嵌套用户控件?,asp.net,.net,forms,Asp.net,.net,Forms,我不熟悉.NET 4.5,但是如果一个基于表单的网站有一个1页aspx页面的母版页(一个1页网站),并且每个小静态部分都在它自己的用户控件中,有时嵌套在其他4层中,这种结构与将主节保留在aspx文件中,而将页眉+页脚保留在主文件中相比,究竟有什么好处 它似乎是一个痛苦的头痛去到每个用户控件(它本身是静态的,只包含html,js,css,仅由用户控件中的小部分使用-例如一个滑块),而不是把它们都放在一起,因为它是静态的 这位高级开发人员说,结构就是在.NET中完成事情的方式,但我有php背景,所以

我不熟悉.NET 4.5,但是如果一个基于表单的网站有一个1页aspx页面的母版页(一个1页网站),并且每个小静态部分都在它自己的用户控件中,有时嵌套在其他4层中,这种结构与将主节保留在aspx文件中,而将页眉+页脚保留在主文件中相比,究竟有什么好处

它似乎是一个痛苦的头痛去到每个用户控件(它本身是静态的,只包含html,js,css,仅由用户控件中的小部分使用-例如一个滑块),而不是把它们都放在一起,因为它是静态的

这位高级开发人员说,结构就是在.NET中完成事情的方式,但我有php背景,所以我看不到这里的智慧


请帮我看看我的大脑拒绝接受的东西。

滑块实际上就是一个很好的例子。假设您决定自定义滑块,使其使用Clorox漂白剂瓶作为点图标。现在,当您对Clorox产品进行调查时,您希望在survey.aspx上使用该滑块。想象一下,当您可以改用asp标记时,为了处理一个控件,现在所有的代码都必须充斥调查页面,比如

<uc:cloroxslider>.
或者想象一下,需要将其添加到另一个页面,然后需要在整个站点上编辑该静态控件,因为您决定滑块现在应该是1-10,而不是1-5。用户控件的要点是保存静态项,以便进行简单的编辑和重用

不过,我承认,我确实认为像您所暗示的那样嵌套用户控件有点不常见。当用户控件的设计方式能够合理地被多个页面调用时,用户控件是最好的。我认为,如果不能在父用户控件或页面之外以任何方式重用它们,那么您的组使用它们的方式可能有点过于精细

编辑:添加了更多信息

有关封装好处的更多讨论,请参见此处

另外,虽然我对此不太了解,但您也可以创建自定义再发行控件。请参见:


这与此无关,请尝试重新标记为。对此,我深表歉意。如果我知道asp 3.0将是微软在.NET诞生时宣布其死亡后的14年左右,生活会变得更轻松。我想答案将是“视情况而定”。在某些情况下,控件的分离将允许很大的灵活性(如@KHeaney所建议的)。在其他情况下,根据组件/控件的大小,它会增加不必要的复杂性,如您所提到的。这里的任何人都很难给你一个具体的答案,如果它是“适合你的解决方案”(TM)Yeh,我同意你的观点,如果网站有超过1个页面。但是,找出页面某个部分所在的嵌套文件所需的时间不必要地让我感到困扰。我认为除了我所缺少的封装之外还有一些优势。那么,如果页面的一部分永远不会在任何地方重复使用,那么将其放在用户控件中有意义吗?封装是一个大问题。在某种程度上也有可读性。虽然在这些文件中挖掘可能会很痛苦,但在我看来,一个100000行的文件总是更糟糕。也对我的问题做了一些修改。