2011-10-01 93 views
0

我想構建一個wpf應用程序(使用mvvm dp),並且需要管理一個客戶列表(最多200個客戶) 建議如何處理此問題? sql(mySql,sqlServer)或其他方式(xml,excel,access)?推薦用於wpf應用程序,sql數據庫或xml

我可以看到優勢,XML,因爲它不需要另外安裝

+0

你有多少個併發用戶?此應用程序是否可以同時在多臺機器上運行,或者只有一臺運行?你需要與任何其他實體共享數據,如果有,如何?除了客戶名單之外,您是否需要管理其他類型的數據?每個客戶記錄包含哪些數據? –

+2

如果您在單臺計算機上使用單用戶應用程序,爲什麼不使用**嵌入**數據庫,如[SQL Server Compact Edition](http://www.microsoft.com/sqlserver/en/us /editions/compact.aspx)??沒有安裝(作爲一個進程內DLL與你的應用程序複製),你仍然有一個(主要)完整的數據庫.... –

+0

@MichaelPetrotta它需要成爲一個用戶(但不一定)。一臺機器。你的意思是與其他實體分享什麼? – Maya

回答

1

如果你有在不同機器上的多個用戶,並且這些機器有一個持久的,共享的網絡連接(他們是在同一網絡上,例如),那麼你應該更喜歡使用一箇中央數據庫,像(如你所說)SQL Server或MySQL。後者是免費的,前者可在free edition (Express)中獲得輕量級工作負載。

如果您不需要在應用程序的不同用戶之間共享數據(您不介意他們的客戶數據不同步),那麼請查看輕量級嵌入式數據庫,如SQLiteSQL Server Compact Edition。非常簡單易於安裝和維護,但數據保持在單臺機器上。

您可以圍繞不同機器之間的手動同步構建一個基礎架構,有點像iTunes在電腦和iPhone之間同步數據,但是相信我,如果可能,最好避免這麼多工作。數據庫中有許多內置的多用戶操作邏輯,您可以在所有可能的情況下利用這些邏輯。

+0

你可以解釋我爲什麼你不喜歡XML解決方案? (如果我不分享數據,我只有一個用戶) – Maya

+1

好吧,沒有什麼真正的*錯誤*將數據存儲爲XML。包括我在內的許多開發人員都這樣做。儘管(比如[ConfigurationSections](http://msdn.microsoft.com/en-us/library/2tw134k3.aspx)),我傾向於使用帶有XML的現有序列化庫。我經常看起來比XML快得多,並希望從一開始就擁有數據庫的強大功能。此外,數據庫使[關係存儲](http://en.wikipedia.org/wiki/Relational_model)變得更容易。 –

1

如果您需要堅持的唯一一件事情是列表中的200個項目,並且您不會在未來看到任何其他持久性數據需求,我會說平面文件很多。但是,這也取決於檢索小數據的頻率。

我是SQL Server的支持者,Express是免費的。但是你不想過度使用這個問題。除非我誤解了你的問題,那是我的評價。

相關問題