我有一个WPF应用程序来显示从db通过EF6获取的[Task]记录列表。现在,用户可以修改多个[任务]记录,让我们说Task_1,Task_2。但他只想将Task_1记录保存回数据库。我无法使用context.Tasks.SaveChanges()
,因为它会将所有更改保存回db,包括Task_1,Task_2。
那么,是否可以将特定记录的更改保存回数据库,同时保留客户端的其他更改以及如何进行?
更新-1
更多细节: 在我的方案中,每个 [任务] 上都有 [保存] 上下文菜单,以保存当前任务。菜单栏上还有另一个 [SaveAll] 菜单,用于保存所有任务的所有更改。
我想支持以下案例:
用户逐个修改和保存任务;
用户修改所有任务和[SaveAll]任务;
用户修改所有任务(例如,Task_1,Task_2,...,Task_n),然后用户保存Task_1,然后用户可能会或可能不会再次修改Task_1,然后用户[SaveAll]任务。
我使用本地SQLite数据库。并且只有一个应用程序连接到此数据库。所以我使用了一个应用程序范围的数据库上下文。我是实体框架的新手,我不知道它是不是一个好习惯。