Интерфейс ProjectServer ReadProject невероятно медленный; создает 200 МБ XML-файл! быстрее? - PullRequest
0 голосов
/ 17 марта 2011

Я пытаюсь создать запланированную задачу, которая обновляет менее 5% задач на сервере проекта, но у меня проблема с методом ReadProject, который занимает слишком много времени;

По сути, потому что этопри работе через веб-сервисы генерируется гигантский XML-файл размером 200 МБ для представления данных задачи, которые затем преобразуются только обратно в объекты;Выполнение вызова может занять до 2 минут.

Я просмотрел базу данных и могу быстро найти нужные данные с помощью быстрого запроса и вернуть данные в отчетном 0 мс (возможно,где-то между 0 и 16 мс?);тем не мение;Мне нужно обновить некоторые пользовательские поля данных задачи, и я бы предпочел не делать это через базу данных, если мне не нужно.

Существуют ли более эффективные способы доступа к проектам;вернуть только определенный набор задач;обновить их и проверить обратно в проект?

Заранее большое спасибо, Крис

1 Ответ

1 голос
/ 17 апреля 2011

Я закончил тем, что просто прошел через базу данных прочитал нужные мне данные и затем, если я вносил какие-либо изменения, использовал интерфейс PSI;

Я также удостоверился, что помечаю элементы как обновленные, если я что-то изменил, а затем получаю изменения только для отправки обратно на сервер. У PSI есть ограничение в 1000 предметов, поэтому вам нужно их группировать, если у вас их больше. Хотелось бы, чтобы это было задокументировано в описании функции ... кровавый документ MSDN: (

...