2013-08-03 78 views
0

我想开发一个客户(工厂)的桌面应用程序,存储人员的个人信息。在这个应用程序中我们为应用程序用户定义级别我的意思是一个用户是顶级(父母),可以看到所有人员数据存储和第二级(第一个孩子)可以看到其数据及其孩子的数据等。完全像树视图,每个节点都可以看到它的数据和子数据。这意味着父母工厂有一些孩子工厂,孩子有孩子。离线应用程序客户端服务器

在线申请你可以处理这么简单,但这是一个离线。现在他们在他们的应用程序中输入他们的人事信息(每个用户都有不同的PC)

现在你知道最大的问题是孩子的合并星展他们的父母DB .Ch3和CH4送他们的星展CH1和同为CH5,CH2然后CH1和CH2以Parent.we在合并例如一个冲突从ch1的人到ch3的数据复制或者如果父母拥​​有所有数据一个孩子改变一个人的国家代码(唯一键)然后在合并中我们不能更新现有的合并中的冲突和许多你知道的问题。

任何想法合并DB s!?

enter image description here


升技我的数据库。 personnelInformation是主表,它有一个名为PersonnelFactory的相关表,每行有一个人工厂,并输入日期和出口日期以及人员代码。该工厂的人员等级(工作)表。这是你理解问题的一小部分。

+0

听起来像是唯一的问题是,你没有一个并购战略?你想如何处理重复?我会使用GUID作为关键字来避免模糊。 – m0s

+0

似乎你说的是真的,但在大数据库与很多相关的表重复,更新和删除行是问题和关系使事情变得复杂。问题是:是否有任何方式DLL,程序等来帮助我,或者我必须用C#代码自己完成它。我读syncframework似乎不能帮助我。 –

回答

0

你可以做的是在服务器端创建一个中央数据库。在客户端,客户端将在本地进行更改,只要互联网可用,他们就可以上传更改并通过中央服务器数据库下载其他人所做的更改。

看看Microsoft Sync Framework。它会自动处理许多复杂的合并场景。有很多解决方案可以避免客户端上的重复密钥,其中之一是使用GUIDuniqueidentifies

下面是一些有用的资源

Introduction to Sync Framework Database Synchronization

Tutorial: Synchronizing SQL Server and SQL Express

+0

我认为同步是为1服务器和1客户端没有多少客户端在树视图像server-Client.i阅读这些链接它不能处理许多客户端。 –

+0

@MamadR不,它支持包括One Server许多客户端在内的所有场景。 –

+0

嗯,你可以告诉我一个链接或教程,可以告诉我,我怎么能为许多客户端(离线),并帮助treeview像服务器客户端strategy.and你知道在大数据库与相关表复杂可以同步处理它? –

相关问题