2009-11-01 213 views

回答

5

我會抓住SQLite以純粹的或者.NET友好的形式(做一個谷歌搜索'sqlite .net'會給你幾個選項)。它超級便攜,在我看來,比SQL Server compact更容易設置和分發。

重要的是要確保您的代碼不會與您的持久性機制緊密耦合,因此將來您可以輕鬆地替換您想要的任何存儲策略。

+0

Thx的提示!我會測試SQLite,我認爲這就是我要找的。 – Richard 2009-11-01 20:32:05

6

我知道你說沒有SQL Server,但我正在讀這意味着你不需要「服務器」,並且你想要將數據存儲在客戶端上。我也假設你可能不會介意你的數據的一些可管理性。你知道,諸如備份之類的東西。交易總是很好,所以你的數據可以保持一致。所以,儘管你可以使用XML(請從你的頭腦中消除對Access的所有想法),但當這是一個解決的問題時,你最終會滾動自己的持久性。

因此,請檢查免費SQL Server Compact版。它是輕量級的,可以在桌面或移動設備上運行,並且如果您的應用程序需要這樣做,則可輕鬆部署。所有常見的持久性框架都支持它。我提到它是免費的嗎?

+0

我自己的個人沙箱項目或多或少都是一樣的東西。我選擇使用SqlCE作爲學習Linq2Sql的一種方式。如果我再做一次,我可能會選擇使用SqlCE w/ADO,或者(如果可行,還沒有完成研究)與Amazon,Google或MS雲服務進行聯機。 – 2009-11-01 20:12:52

+2

爲什麼不使用SQLite?它與.NET的所有東西都很好地集成,並作爲文件系統上的單個文件駐留。 – 2009-11-01 20:17:06

+0

我也爲SQLite投票。有一個實體框架提供商,順便說一句。 – 2009-11-01 20:23:13

4

我建議選擇最簡單的數據源並將其適當解耦,以便在稍後找出適合您的目的的新數據源。爲此,您可能會發現像XML或甚至明文這樣的東西,可能是最簡單的工作。

根據您的實際使用情況確定您需要從數據源獲取的特徵後,選擇適當的後備存儲。

我不認爲首先做出這個決定是非常重要的,因爲這是一個個人項目,而不是商業項目。

1

我以前用過的一個簡單的方法就是你的「xml文件」的想法。只需創建一個描述您關心的數據的對象,然後將其序列化爲xml。

格雷格絕對正確,他說確保您的數據源已正確解耦,以便您可以在需求發生變化時將其切換出來。

相關問題