private void InitializeStorage() { // Open storage account using credentials from .cscfg file. var storageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("StorageConnectionString")); // Get context object for working with queues, and // set a default retry policy appropriate for a web user interface. CloudQueueClient queueClient = storageAccount.CreateCloudQueueClient(); queueClient.DefaultRequestOptions.RetryPolicy = new LinearRetry(TimeSpan.FromSeconds(3), 3); var dbConnString = CloudConfigurationManager.GetSetting("PrimeSolverDbConnectionString"); _repository = new PrimeNumbersRepository(dbConnString); // Get a reference to the queue. _primesQueue = queueClient.GetQueueReference("primes"); }
// A production app would also include an OnStop override to provide for // graceful shut-downs of worker-role VMs. See // http://azure.microsoft.com/en-us/documentation/articles/cloud-services-dotnet-multi-tier-app-storage-3-web-role/#restarts public override bool OnStart() { // Set the maximum number of concurrent connections. ServicePointManager.DefaultConnectionLimit = 12; // Open storage account using credentials from .cscfg file. var storageAccount = CloudStorageAccount.Parse (RoleEnvironment.GetConfigurationSettingValue("StorageConnectionString")); Trace.TraceInformation("Creating primes blob container"); //var blobClient = storageAccount.CreateCloudBlobClient(); //var tableClient = storageAccount.CreateCloudTableClient(); //_tableContainer = tableClient.GetTableReference("primes"); //primesBlobContainer = blobClient.GetContainerReference("primes"); //if (_tableContainer.CreateIfNotExists()) //{ // Enable public access on the newly created "primes" container. //_tableContainer.SetPermissions(new TablePermissions(), new TableRequestOptions(new TableRequestOptions() {})); //} var dbConnString = CloudConfigurationManager.GetSetting("PrimeSolverDbConnectionString"); _repository = new PrimeNumbersRepository(dbConnString); //var webRoleEndPoint = RoleEnvironment.Roles["PrimeWorkerWeb"].Instances[0].InstanceEndpoints["WebPortalEndPointHttps"].ToString(); BaseUrl = CloudConfigurationManager.GetSetting("ApplicationRoot"); Trace.TraceInformation("Creating primes queue"); CloudQueueClient queueClient = storageAccount.CreateCloudQueueClient(); _primesQueue = queueClient.GetQueueReference("primes"); _primesQueue.CreateIfNotExists(); //Trace.TraceInformation("Storage initialized"); return(base.OnStart()); }