2011-03-11 38 views
1

我来自ASP.Net MVC背景,所以我喜欢设计好东西。我刚开始回到ASP.Net Web表单中,因为我的工作需要它。这是Web用户控制的好设计吗?

我有一个用户控件,我想用它来封装整个组件(布局和代码)。取决于这个控件的某些设置,布局可能会改变,或者我可能会调用事件等等......做这种事情的好习惯吗?

<%#如果(this.SomeProperty)...%><%#如果(this.something)this.runSomeMethod())%>

我不知道是什么是关于网络用户控制的好设计。

回答

6

由于这是相当主观的,我会给你我的主观意见:除了极少数情况下,我更喜欢使用代码隐藏来驱动控制和页面逻辑。我并不介意“标签汤”本身,但我认为只要用正确的代码做一切事情就会清楚得多。当你隐藏代码时,你也可以获得具体类的引用,这在很多方面都很有用,特别是在大型项目中。

也就是说,你所做的事没有什么根本性的错误。

+2

同意。我更喜欢使用代码来实现我可能的一切。 “标签汤”让我发疯,可能会感到困惑和难以维护。 – 2011-03-11 17:37:19

2

同意kprobst。我们团队的最佳实践包括避免aspx文件中的任何类型的服务器端代码(数据绑定调用除外)。任何业务或页面逻辑可以更加整齐地组织在后面的代码上。

标签汤是经典的ASP,ColdFusion和PHP难以避免的。 ASP.NET很容易避免。