C# 如何使用.NET中的数据绑定应用业务逻辑?

C# 如何使用.NET中的数据绑定应用业务逻辑?,c#,.net,vb.net,winforms,C#,.net,Vb.net,Winforms,有人举过在使用数据绑定的应用程序中应用复杂业务逻辑的例子吗 我从未使用过数据绑定,因为它从未完全适合任何应用程序。即使使用一个简单的以数据为中心的WinForms应用程序,也有一些业务规则适用于记录可能发生的事情、必须发生的时间或导致记录发生的人 …可能某个用户无法更新记录,但他们可以查看该记录 …记录的当前状态可能无法更新 …可能记录有“IsDeleted”或“DateDeleted”标志 我总是在业务类中创建具有非常特定操作的类,并检查安全性、记录条件等。这使得它很难像微软鼓吹的那样实际绑定

有人举过在使用数据绑定的应用程序中应用复杂业务逻辑的例子吗

我从未使用过数据绑定,因为它从未完全适合任何应用程序。即使使用一个简单的以数据为中心的WinForms应用程序,也有一些业务规则适用于记录可能发生的事情、必须发生的时间或导致记录发生的人

…可能某个用户无法更新记录,但他们可以查看该记录

…记录的当前状态可能无法更新

…可能记录有“IsDeleted”或“DateDeleted”标志

我总是在业务类中创建具有非常特定操作的类,并检查安全性、记录条件等。这使得它很难像微软鼓吹的那样实际绑定到对象集合

如有任何有用的样本或链接,我将不胜感激

谢谢,
Ryan我想你需要的是一个

这允许您引入将UI中的复杂用户交互绑定到的所有操作,而无需将自己耦合到单个UI元素

它在使用的XAML应用程序中使用得相当广泛

在其他地方,您可以在中的web上看到这一点


至于WinForms。。。在中使用广泛的数据绑定确实是一个糟糕的平台,因为它根本不支持它。您最好在WinForms中使用一种模式,但不可避免地需要在代码中进行连接。

我认为您需要的是在WPF体系结构中实现的MVVM模式。这里有一个非常有用的链接

为微软工作的JoelCochran发布了这篇文章,这对于刚刚开始使用WPF和MVVM非常有帮助

当您完成这项工作时,您应该已经清楚地了解了数据绑定和MVVM模式。希望这有帮助


此外,与Josh的帖子一致,WinForms不是实现这一点的好平台。

我完全不确定我是否理解这个问题,但如果是这样,那么关键是您的业务对象必须是事务性的或“可回滚的”,并且必须实现与绑定相关的接口。然后在对象中进行业务规则验证,如果验证失败,可以将对象回滚到其先前的状态。