2012-09-15 13 views
5

Szukam ciąg połączenia, który należy zdefiniować, aby użyć emulatora pamięci Windows Azure.Ciąg połączenia emulatora pamięci masowej Windows Azure dla ASP.NET MVC?

Do tej pory wszystkie znalezione źródła wskazują, że te ciągi połączeń powinny być przesyłane do plików ServiceDefinition i ServiceConfiguration znajdujących się w projekcie Windows Azure. Jednak nie używam projektu Azure, ale ASP.NET MVC 3.

W przypadku projektu ASP.NET MVC powinien prawdopodobnie przejść do pliku web.config. Jednak nie mam pojęcia, jak powinien wyglądać?

Mam konto Azure, jeśli jest to potrzebne dla emulatora.

Dzięki.

Odpowiedz

12

W tym article mówi ConnectionString jest DevelopmentStorage=true

Więc w Web.config można użyć:

<appSettings> 
    <add key="StorageConnectionString" value="UseDevelopmentStorage=true" /> 
</appSettings> 

W ServiceConfiguration.cscfg:

<Setting name="StorageConnectionString" value="UseDevelopmentStorage=true" /> 

Można użyć CloudConfigurationManager będzie się konfiguracja z ustawień Service Configratuon, jeśli istnieje. Użyj go:

CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
    CloudConfigurationManager.GetSetting("StorageConnectionString")); 

Jeśli nie istnieje w ServiceConfiguration, zostanie przywrócony do ustawień aplikacji web.config. W ten sposób, jeśli przeniesiesz aplikację na Azure, jeśli chcesz i nie będziesz musiał niczego zmieniać w sposobie pobierania ciągów połączeń. Mam tendencję do ukrywania tego wszystkiego w interfejsie ISettingsProvider (więc nie biorę na nic zależności), ale to chyba przesada.

Główną zaletą umieszczenia połączenia w konfiguracji ServiceConfiguration jest możliwość zmiany ustawienia bez konieczności ponownego wdrażania aplikacji.

Jeśli zdecydujesz się użyć web.config, możesz użyć transform, aby zamienić konto developmentstorage na prawdziwe konto podczas publikowania. Jeśli korzystasz z usługi Azure, w konfiguracji usługi w chmurze masz tylko inny ciąg połączenia.

Do uruchomienia emulatora nie jest potrzebne rzeczywiste konto Azure.

Powiązane problemy