2016-05-31 5 views
1

Я разрабатываю свою первую надстройку для Outlook Web App. Мне непонятно, где я должен хранить большие части данных, предоставленные пользователем (например, большие фрагменты текста, изображения) и быть связанными с надстройкой (в отличие от принадлежности к определенному элементу почты).Где хранить более крупные данные для Outlook Web App?

Мое впечатление, что RoamingSettings предполагается для относительно небольших вещей и, следовательно, не подходит. Я мог бы хранить данные в OneDrive, но я предпочитаю не предоставлять данные пользователю вне пользовательского интерфейса надстройки. Я нашел this SO entry, но ответ кажется более применимым к настольному Outlook, а не к OWA. Я полагаю, что я мог бы хранить данные на своем собственном сервере, если мне это нужно, но сначала я хочу знать, есть ли что-то в архитектуре OWA, которая будет служить этой цели.

ответ

2

RoamingSettings - это выбор по умолчанию для хранения настроек/данных приложения/пользователя, но существует ограничение на 32 КБ, которое может использоваться для каждой настройки и 2 МБ для всех настроек, используемых вашей надстройкой. Альтернативный подход заключается в использовании EWS для создания сообщения в скрытой папке и хранения ваших данных в теле сообщения.

Я создал реализацию, которая преобразует XML в скрытое сообщение и обратно в объекты JavaScript. Вы можете видеть мою статью здесь (с приложением образца и исходным кодом в GitHub) о том, как это сделать:

https://blogs.msdn.microsoft.com/mvpawardprogram/2016/01/26/unifying-your-web-dev-skills-for-office-add-ins/

+0

Ничего себе, отличная статья. Спасибо, Эрик! –

+0

Просто уточнить ... В вашем ответе указано, что ограничение RoamingSettings составляет 32K за надстройку. Однако в вашей статье указано, что ограничение составляет 2 МБ на надстройку с ограничением 32 КБ для каждой настройки. Я предполагаю, что 2 МБ является правильным значением? –

+1

Да, извините - мое предыдущее я правильно. Это значение 2 МБ может быть не документировано, но я получил эту информацию от Microsoft PM –

0

Я разработчик Microsoft работает над надстройкой Outlook.

Следует хранить большие данные с помощью службы/на вашем сервере, как вы отметили. Сообщение, как правило, не подходит для хранения случайных данных для вашего добавления. Использование makeEwsRequestAsync требует наличия ReadWriteMailbox для разрешения addin, которое в противном случае может и не понадобиться.

Другое примечание: ограничение 32K является пределом для RoamingSettings для каждого дополнения для Outlook. Это не 2 МБ.

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