2012-04-04 35 views
3

我在多個項目和解決方案中使用RavenDb來訪問三個不同的數據庫,這些數據庫都是同一產品的一部分。例如,我有多個MVC項目,從'web'中心數據庫和'backend'數據庫獲取用戶信息和一些數據,使用' - '作爲id覆蓋(但是我只需要這個項目的子集'web'db)。然後我有另一個服務使用的'後端'數據庫(以及MVC項目)。最後是另一組服務使用的第三個臨時/暫存數據庫來構建後端數據庫。當然,所有這些都可以從不同的類庫,甚至控制檯測試,種子和集成測試應用程序訪問。RavenDb配置和DocumentStore抽象?

管理所有這些變得相當麻煩。每次我創建一個訪問數據庫的新控制檯應用程序或類庫時,我都必須爲每個項目設置config和raven包,確保建立索引等......更不用說在所有nuget更新上運行更新,或者在我的情況下,安裝一個新的不穩定版本的服務器/客戶端二進制文件。

有沒有更簡單的方法來管理?

我試圖抽象DocumentStore的創建和初始化,以及索引創建到它自己的項目和引用。但其他項目則必須從軟件包目錄手動添加newtonsoft.json(和nlog)。

同樣,當我嘗試將DocumentStore抽象爲具有靜態屬性的類時,我得到以下內容: 記錄了未處理的文檔存儲的StackTrace。請確保在測試中處理任何文檔存儲以避免測試中的競爭條件。

任何人有任何想法來處理這些問題?

感謝

+0

這仍然是一個問題? Raven 2.0客戶端不具有對newtonsoft.json和nlog的依賴性。 – 2013-02-08 00:20:24

回答

-2

我不認爲手動添加引用的是一個大問題,但您可以添加實際的NuGet引用爲好。 請注意,DocumentStore未處理的錯誤是僅在不穩定(調試版本)中發生的情況,並且不會在發佈版本中發生。