0

我要写一个 wpf 应用程序,我想我需要一些建议。我有一个提供一些记录的数据库。这些记录显示在 ListView 中。用户可以插入、删除或修改记录。这些操作中的每一个都调用一个类的适当方法,该类提供在我的数据库上工作的方法。如果对数据库的操作成功,我会触发一个事件。此事件被显示用户所做更改的 ui 捕获。如果对数据库的操作失败,则会显示一条消息。

数据库由在线程中运行的方法观察。此方法每分钟检查一次数据库中的数据是否已更改(例如,由也使用这些数据的其他用户更改)。如果检测到更改,还会触发包含更改记录的事件。

在 ui 类中,我正在处理存储在 DataTable 中的本地数据。

有没有比我的方法更好的方法来构建该应用程序?我认为我的方法不太好......

4

1 回答 1

0

坦率地说,我认为设计没有任何问题,我只建议考虑引入 Entity Framework 来进行一些数据库访问。

除此之外,如果您正在组合编辑器和此数据库更改检查器,请首先设计数据库检查器,然后使用编辑器处理数据库检查器可能报告的任何可能的更改或锁定。将管道安装到现有系统将是一场噩梦。如果您预先构建它,它是非常易于管理的。

坚持使用 MVVM 系统,并确保你有一个 UI 可以访问的 VM 以及线程检查器。放入布尔标志,允许样式和控件在 Xaml 中打开/关闭。

即使它不是 Silverlight 项目,也要以异步方式设计所有数据访问,并具有锁定共享数据的能力。如果您预先设计多线程,从长远来看,它会有所回报。我在我的博客文章Xaml: ViewModel Main Page Instantiation and Loading Strategy for Easier Binding中展示了这种异步操作和 MVVM 的基本方式,作为基本参考。

考虑将 C# 接口用于您正在处理的主要操作和数据。这将使您能够独立测试它们并在需要时提供依赖注入,以使您的类在长期内可测试和可重用。

最后使用最新版本的.Net。不要在不必要的时候使用旧版本来束缚自己。

于 2013-10-30T18:50:47.803 回答