2013-08-03 79 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你知道在大數據庫與相關表複雜可以同步處理它? –

相關問題