Асинхронный вызов из кнопки управления Webpart в MOSS 2007 - PullRequest
0 голосов
/ 16 мая 2011

У меня есть веб-часть в Moss 2007, которая выполняет итерацию по заданному списку с помощью API Sharepoint и устанавливает для значения поля какое-то заранее заданное значение. В основном массовое редактирование списка.

Для небольших списков веб-часть прекрасно работает. Но когда я работаю со списком, содержащим большое количество элементов, я получаю внутреннюю ошибку или тайм-аут запроса.

Есть ли способ, которым я могу щелкнуть по кнопке и в фоновом режиме выполнять действия асинхронно, чтобы отправителю не пришлось ждать завершения операции или получить сообщение позже?

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

PS. В проекте нет страницы .aspx, просто прямой класс, который имеет createchildcontrols и другие функции.

PSS. У меня очень мало контроля над web.config или чем-то подобным на самом сервере

1 Ответ

0 голосов
/ 16 мая 2011

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

Если вы можете развернуть веб-службу в ферме, вы можете переписать свою веб-часть, чтобы использовать AJAX для вызова веб-службы для выполнения работы.

Другим вариантом будет создание фоновых потоков в вашей веб-части, но я бы очень настороженно отнесся к этой опции. Мало того, что управление потоками затруднено, но и они будут выполняться в рабочем процессе IIS SharePoint, таким образом увеличивая возможность для вашей веб-части отключить сайт.

...