Доступ к локальному хранилищу в Azure

У меня есть веб-сайт в Azure, который я хочу создать в формате PDF из шаблонов. Мне нужно где-то хранить PDF-файл, пока я его создаю. После некоторого поиска я подумал, что лучший способ справиться с этим — через локальное хранилище. Я добавил проект облачной службы Windows Azure в свое веб-приложение. Затем я добавил локальное хранилище к роли для своего веб-приложения. Локально теперь я могу создавать PDF-файлы из шаблонов и хранить их в хранилище BLOB-объектов. Однако, когда я публикую приложение на Azure, оно больше не работает. Я подумал, что мне может понадобиться создать облачную службу в Azure из моего проекта локальной облачной службы, поэтому создал для этого пакет. Облачная служба запущена, но я по-прежнему не могу получить доступ к локальному хранилищу.

Линия:

Dim myReportsStorage As LocalResource = RoleEnvironment.GetLocalResource("myReports")

работает локально, но не работает, когда я публикую веб-сайт в Azure. Я не уверен, нужно ли мне как-то связать свой веб-сайт и облачный сервис в Azure, но я не понимаю, как это сделать.

Если кто-то может помочь с этим, я был бы очень благодарен.


person Rachel Edge    schedule 26.07.2012    source источник
comment
Это выглядит правильно, если предположить, что локальное хранилище правильно настроено в конфигурации вашего проекта. Было бы полезно, если бы вы сказали, какую ошибку вы получаете.   -  person Brian Reischl    schedule 26.07.2012
comment
Спасибо за ответ, приятно знать, что я иду в правильном направлении. Теперь я отследил ошибку: Не удалось загрузить файл или сборку «Microsoft.WindowsAzure.ServiceRuntime, версия = 1.7.0.0, культура = нейтральная, PublicKeyToken = 31bf3856ad364e35» или одна из ее зависимостей. Система не может найти указанный файл. Я указал на это в своем веб-приложении, так что еще мне нужно сделать?   -  person Rachel Edge    schedule 27.07.2012
comment
Я провел еще несколько исследований и обнаружил, что ошибка страницы возникает, если Dim myReportsStorage As LocalResource = RoleEnvironment.GetLocalResource(myReports) появляется в коде Page_Load. Возникает ошибка страницы, и событие Page_load даже не запускается.   -  person Rachel Edge    schedule 27.07.2012
comment
Проверьте ссылку на эту DLL и убедитесь, что для параметра Copy Local установлено значение True.   -  person Brian Reischl    schedule 27.07.2012
comment
Спасибо, это меня немного продвинуло. Теперь страница загружается, но по-прежнему не работает в строке Dim myReportsStorage As LocalResource = RoleEnvironment.GetLocalResource(myReports). На этот раз ошибка: Инициализатор типа для «Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment» вызвал исключение. Я настроил свой облачный сервис для удаленного доступа и могу видеть папку myReports при подключении. Таким образом, хранилище есть.   -  person Rachel Edge    schedule 28.07.2012
comment
Теперь я решил эту ошибку, добавив ссылку на msshrtmi. Однако теперь у меня проблемы с этим. и я получаю ошибку не удалось загрузить файл или сборку msshrtmi. Я пробовал версии x86 и x64 и устанавливал для локального копирования значения true и false. Все без везения. Любые идеи, что я могу попробовать дальше?   -  person Rachel Edge    schedule 29.07.2012
comment
Теперь все в порядке. Я неправильно настроил облачный сервис. Теперь я следовал инструкциям по адресу: windowsazure.com/en-us/develop/net/tutorials/ и все работает хорошо.   -  person Rachel Edge    schedule 29.07.2012