Asp.net 将所有页面内容放入web用户控件是一个好的做法吗?

Asp.net 将所有页面内容放入web用户控件是一个好的做法吗?,asp.net,coding-style,Asp.net,Coding Style,在我的公司,在所有现有项目中,他们将页面内容和控件放在用户控件(Asp.NET)中,然后将用户控件放在页面上 除了可以在其他页面上使用用户控件之外,还有什么好的理由吗?它们还可以从实际页面获取用户控件的某些属性和方法 控制 Login.ascx Login.aspx 谢谢。我见过这种技术被用来代替1.1版系统的母版页(母版页之前),但总的来说,我认为这不是一个非常明智的设计。这似乎会让这个系统变得比它需要的更复杂,而且几乎没有任何动机来证明这一点 这种设计的另一个问题是,它使用户控件在传

在我的公司,在所有现有项目中,他们将页面内容和控件放在用户控件(Asp.NET)中,然后将用户控件放在页面上

除了可以在其他页面上使用用户控件之外,还有什么好的理由吗?它们还可以从实际页面获取用户控件的某些属性和方法

  • 控制
    • Login.ascx
  • Login.aspx

谢谢。

我见过这种技术被用来代替1.1版系统的母版页(母版页之前),但总的来说,我认为这不是一个非常明智的设计。这似乎会让这个系统变得比它需要的更复杂,而且几乎没有任何动机来证明这一点

这种设计的另一个问题是,它使用户控件在传统意义上更难使用,因为不能将同一程序集的控件嵌套在彼此之间,至少在web.config中注册用户控件时是这样。任何嵌套的cotnrols都必须在代码隐藏中以编程方式创建,或者在使用该控件的每个页面的指令中注册,这会创建更多冗余和卷积

最大的问题是为什么?你从这种方法中真正获得了什么

  • 设计是否更灵活
  • 系统快吗
  • 设计是否更容易理解
  • 设计是否易于维护
  • 是否需要更少的代码
所有这些问题的答案都是否定的,这对我来说清楚地表明了设计的缺失。这种技术无助于设计,但却阻碍了设计。为什么呢?我想不出有什么实质性的好处


希望这有帮助。只有我的两分钱。

是的,有一种翻转方式,即具有多个用户控件的页面将每个控件的逻辑放在一个单独的文件中,而不是将所有控件都放在一个代码隐藏的文件中,例如,想象几个控件中的代码挤在一个文件中。如果您还没有看到在一个文件中执行了太多操作的意大利面代码,那就谢天谢地了。我见过很多这样的人。

你有没有问过你公司的人为什么这样做?我不想问,因为我不能想出更好的解决方案,或者至少我不知道他们为什么会走这条路。这是有道理的。但实际上,他们似乎甚至没有在同一个页面中使用两个用户控件,这就是为什么我觉得它没有必要,但可能为了进一步的开发,他们把门开着。