【问题标题】:Should I Use User Controls If I'm Not Going To Reuse The Code?如果我不打算重用代码,我应该使用用户控件吗?
【发布时间】:2010-12-16 02:37:01
【问题描述】:

首先,我希望我能得到一些关于我的实践的建议,因为根据我读过的很少的书,他们并没有在 aspx 页面上写太多......他们只是构建了一些控件并使用它们在 aspx 页面中,那么这种方法是一种好习惯吗?

我的问题来了,我认为使用 Web 控件而不是直接写入 .aspx 页面会更好,因为我可以重用代码,但现在我正在创建这些控件,我认为我不会再次重用它们或者也许只是再一次。 那么你认为为代码创建一个控件而不是直接在.aspx页面中编码是否明智?

我还在开发用于向我的数据库添加新项目的 Web 用户控件,然后我开始计划更新或编辑控件..我想也许我会为添加和编辑使用相同的控件开始重用我的代码,并在编辑控件以同时用作添加和编辑控件的过程中,我首先向控件添加属性,然后在 Load 方法中进行一些分配,然后使用 if...所以我意识到也许一个新的控件会更好!

我不知道,我是凭直觉思考,但我真的可以使用专业、经验丰富的观点。

感谢您的宝贵时间 =)

【问题讨论】:

    标签: c# asp.net ado.net webforms


    【解决方案1】:

    有时创建一个用户控件,允许您将一些特定的逻辑和 ui 元素封装到一个单独的类中。即使您不重用控件,最终代码也可能更易于阅读和维护。以登录控件为例,如果您在用户控件中做出与登录相关的决定,并将这些“细节”隐藏在其余代码中,那么代码将变得更简单、更易于阅读和维护!

    【讨论】:

    • 这是一个很好的观点。另一个示例是具有多个不同列表和图表的页面,例如某些仪表板页面。这些可能是需要维护的噩梦。如果代码很好地分离到单独的控件中,您可以修复一个目标部分,而不要理会其余部分。 +1
    • @Gerardo Grignoli-我喜欢登录控件示例,你是完全正确的,但在我的情况下,控件几乎可以容纳我在 .aspx 页面中包含的所有内容......我的意思是当我正在编辑或添加一个新项目,会有许多标签和文本框以及一些其他输入控件..这就是页面的全部内容,我认为我不需要更多地使用它一次,也许两次顶!那你怎么看?
    • 如果没有意大利面条式的代码需要清理,也没有明确的单独的ui问题混入代码中,不需要重用,那么我不明白你为什么要做一个用户控件......如果你的简单的页面变胖了,你自然会想要拆分成用户控件或简单的类。但是不,您不必强制使用用户控件。
    • 很抱歉,如果我把重点放在家里太难了,但这里就可以了。任何人都可以敲出一个正常工作并符合规范的 aspx 页面。制作符合规范且易于维护的页面需要一些技巧和经验。
    • 谢谢我的回答..赞赏 =)
    【解决方案2】:

    如果您不打算重用代码,那么您就不需要用户控件或任何其他类型的控件。只需将适当的代码和控件放到页面上即可。

    如果你以后发现你确实想要重用它,那么你可以让用户控制它。

    【讨论】:

    • 我同意你的看法。当您复制/粘贴内容而不是将代码放入控件时。
    • @A_Var- 对不起,我没听懂你想说的!
    【解决方案3】:

    如果您确定要使用控件(或一些细微的变化),那么创建用户控件是一件轻而易举的事。

    对我来说,如果我想到在未来的某个项目中可能再次需要类似的功能,那么我有时会创建一个控件,只是因为我认为它会很有用。

    【讨论】:

    • +1 “如果我想到在未来的某个项目中可能再次需要类似的功能,那么我有时会创建一个控件,只是因为我认为它会很有用。”谢谢(Y)
    • 开始构建您的工具箱永远不会太早;o)
    猜你喜欢
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-08
    • 2021-05-24
    相关资源
    最近更新 更多