【发布时间】:2010-11-09 11:03:02
【问题描述】:
关于这两种方法:
<asp:Label ID="Label1" runat="server"><%# DateTime.Now %></asp:Label>
和
Label1.Text = DateTime.Now.ToString();
您使用哪个以及为什么?
【问题讨论】:
标签: asp.net html data-binding
关于这两种方法:
<asp:Label ID="Label1" runat="server"><%# DateTime.Now %></asp:Label>
和
Label1.Text = DateTime.Now.ToString();
您使用哪个以及为什么?
【问题讨论】:
标签: asp.net html data-binding
两者都是一样的。
就我个人而言,我更喜欢程序化方法(第 2 项),因为代码隐藏更加工程化并且更易于维护。好吧,这是一个简单的例子,你当然可以写下当前时间,但是,一般来说,最好为图形布局留下标记并尽可能多地使用代码。在其他复杂的场景中,您会发现更容易重构代码或使用分析器对其进行分析。
希望能有所帮助。请记住,这都是恕我直言:)
【讨论】:
我认为答案取决于您的控件是否在数据绑定列表中。如果是这样,那么使用第一个示例的数据绑定语法将是有利的,因为它更直接,并且您不必处理每个项目的 ondatabound 事件,并使用查找控件查找控件,所以它从这个意义上说,它更易于实现、更少的代码、更简单且更易于维护。
但是,如果您只是加载普通控件而不是在重复列表中,那么第二种方法是最好的,因为您不必通过数据绑定的额外步骤来显示您的值,并且您可以保留所有代码绑定控制值一起。不过这只是我的看法。
【讨论】: