2015-03-17 2 views
4

Я изо всех сил пытаюсь найти какое-то реальное руководство по поводу того, должен ли я делиться экземплярами набора объектов Azure Table Storage в моем приложении ASP.Net WebAPI.Должен ли я хранить ссылки на Azure CloudTableClient/CloudTable?

Для полноты получения объекта из хранилища таблиц выглядит следующим образом.

При объединении чего-то подобного в слое данных, где у меня есть один экземпляр «Репозиторий», общий для приложения, безопасно ли хранить ссылку на CloudTable - делиться ею с будущими операциями - или я должен воссоздавать CloudTable через tableClient.GetTableReference для каждой операции? Или, возможно, даже воссоздать CloudTableClient для каждой операции?

// Retrieve the storage account from the connection string. 
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
    CloudConfigurationManager.GetSetting("StorageConnectionString")); 

// Create the table client. 
CloudTableClient tableClient = storageAccount.CreateCloudTableClient(); 

// Create the CloudTable object that represents the "people" table. 
CloudTable table = tableClient.GetTableReference("people"); 

// Create a retrieve operation that takes a customer entity. 
TableOperation retrieveOperation = TableOperation.Retrieve<CustomerEntity>("Smith", "Ben"); 

// Execute the retrieve operation. 
TableResult retrievedResult = table.Execute(retrieveOperation); 

// Print the phone number of the result. 
if (retrievedResult.Result != null) 
    Console.WriteLine(((CustomerEntity)retrievedResult.Result).PhoneNumber); 
else 
    Console.WriteLine("The phone number could not be retrieved."); 

Как и в сторону, какие ресурсы/должн читает которые помогли бы мне ответить на этот или подобный в будущем очень приветствуются.

ответ

0

Совместное использование экземпляров ваших объектов должно быть прекрасным. Если вы пытаетесь использовать различную аутентификацию/конфигурацию для разных таблиц, вам нужно иметь больше экземпляров.

+1

Можете ли вы расширить это? К сожалению, единственная документация, которую я могу найти, - это типичный вариант: «Любые члены экземпляра не гарантируются потокобезопасностью». Это означало бы, что требуется воссоздать весь набор объектов для каждого запроса. – dlras2

Смежные вопросы