DataBinding对手动查询/添加到控件的好处

时间:2008-10-30 19:15:31

标签: c# .net sql-server model-view-controller data-binding

我一直是C#程序员,总共大约2年,而且专业性高于1。我作为开发人员在一家公司工作,开始于.NET 2之前的应用程序。我的问题是这个:

将sql查询中的数据绑定直接用于控件以查询和手动向控件添加项目有什么好处?这种方法通常被认为是更清洁,在部署方面更简单吗?是否仍会出现手动添加会对数据的显示/值进行更精细控制的情况?

我问的是因为我已经分配了一些错误来处理根据查询结果填充自己的一些控件,并且希望清理不必要的逻辑并将其推送到库来处理而不是我。< / p>

注意:我们使用的是.NET 2.0

5 个答案:

答案 0 :(得分:5)

我个人觉得使用

control.DataSource = YourSource;
control.DataBind();

过程要容易得多,您不必进行迭代,总体上会减少LOC。

如果使用DropDownLists和其他控件,您很可能也会设置DataValueField和DataTextField属性。

答案 1 :(得分:1)

数据绑定更容易设置,总体上更不容易出错,显着降低LOC(如Mitchel Sellers所说),并且除了一些小故障之外,工作相当可靠。

根据我的经验,如果您需要指定数据绑定控件的确切更新顺序或时间,您实际上只需要完全手动控制。

答案 2 :(得分:1)

信息加入设置起来要简单得多,整体问题主题较少,大大降低了LOC,而且除了一些适度的错误之外,它们也很容易实现。根据我的经验,如果您需要指定实际的最新订单或时间以获取特定句柄的详细信息,您实际上只需要完整的指南控制。

答案 3 :(得分:0)

如果您有复杂的输入方案,手动绑定会很有用。使用数据绑定输入控件,您可以发现只有在遇到数据库并且抛出异常(格式错误的日期/时间,整数超出正确范围等)时才知道您有错误的数据。

你可以使用数据控件上的各种验证/预提交事件来处理这个问题,但是只要手动验证你的输入并在你知道它是正确的时候发布它就可以更容易(也更明显可读)。

这是我能想到的唯一原因,它只适用于输入。如果你处于只读场景,那么数据绑定就不费吹​​灰之力了。

答案 4 :(得分:0)

我的经历与我此前的海报完全相反。 This blog entry(2006年)总结了我对数据绑定的感受。