2012-06-25 14 views
4

我已將應用程序配置爲在開發設置中使用服務配置本地。爲什麼CloudConfigurationManager使用我的Cloud.cscfg而不是Local.cscfg?

我有兩個cscfg文件(默認情況下)雲和本地。我爲Storage添加了連接字符串,告訴它在Cloud.cscfg中使用真實帳戶,爲Local.cscfg使用dev存儲。

然而,當我跑我的項目,

var setting = CloudConfigurationManager.GetSetting("StorageConnectionString"); 

它是利用我的雲配置,並返回我的直播存儲使用的線路。這絕對是我的Cloud cscfg,而不是其他設置值,就像我在Cloud中更改它的設置返回的更改。

這是設計嗎?有沒有辦法看到CloudConfigurationManager用來選擇配置的邏輯?

奇怪的是我確信這是更早的工作。

+0

嘗試構建一個再現問題的小樣本。請注意,在啓動計算模擬器時,配置文件與正在運行的應用程序相關聯。 (所以CloudConfigurationManager的邏輯中沒有任何東西可以影響使用哪個文件。) – smarx

+0

因此,通過設計CloudConfiurationManager應該使用指定的服務配置?我會看看我能否以小樣本重新制作。 – GraemeMiller

回答

3

刪除項目的所有編譯版本。重新啓動的計算和開發存儲服務和問題消失了。

+0

有時只需重新啓動計算模擬器將有所幫助。下一步是完整的清潔和重建。有了一個stackoverflow異常,我已經看到解決方案可以是一個完整的機器重啓。 – Boggin

0

嘗試刪除所有編譯版本並重新啓動模擬器多次無濟於事。

找到我的設置是不正確的。

因此,右鍵單擊您的Cloud Service項目(不是角色,但項目)和「屬性」。

然後進入「開發」選項卡(從左邊),你會看到「運行/調試類別」下的「服務配置」設置。

這需要是本地雲服務項目才能使用本地設置。

相關問題