Программный доступ к файлу Microsoft Project (MPP) из С#
Каковы мои возможности для программного доступа к файлу Microsoft Project? Каковы плюсы и минусы каждого подхода?
Мне в основном нужно будет импортировать все данные из файла в другую структуру данных. Использование команд Office Interop на шкале предпочтений невелика.
Ответы
Ответ 1
Вот варианты:
- Interop (грязный и ужасно медленный для
большие проекты)
- Сохранить проект в XML и работать с ним
(Грязный)
- Сохранить проект в базе данных (это
не публикуется, и доступно
только для проекта 2003 - см. ODBC
при сохранении). я видел это
много используется в интеграции
Сценарии
- Projette (коммерческий, 10 долларов США за
лицензия)
- ILog Project Viewer (также
коммерческая)
Ответ 2
Библиотека MPXJ (mpxj.sf.net) поставляется как в Java, так и в формате .Net, и позволит вам читать и писать несколько файлов Microsoft Project форматов с использованием единого согласованного API. Я знаю коммерческие продукты, которые используют как Java, так и .Net-версии MPXJ без каких-либо проблем.
Отказ от ответственности: я поддерживаю MPXJ.
Ответ 3
Вы можете использовать Aspose.Tasks для .NET. Этот компонент позволяет работать с файлами Microsoft Project. Он не требует установки MS Office на сервере, в отличие от Office Interop. API очень прост и удобен в использовании. И он предоставляет богатый набор функций для чтения, редактирования, записи и конвертации файлов MPP.
Этот компонент представляет собой обычную сборку .NET, которую можно использовать с приложениями .NET. Он работает на любой ОС Windows, а также в 32/64-битных средах.
Раскрытие информации: я работаю евангелистом-разработчиком в Aspose.
Ответ 4
Microsoft Office API обеспечивает программный доступ к MS Project. Я использовал его только для Word и Excel, поэтому я не знаю, насколько насыщен интерфейс - вам придется немного покопаться в MSDN, чтобы узнать, что вы можете и не можете сделать.
Один из Java-проектов в моей компании использует коммерческий продукт Aspose, который позволяет приложениям манипулировать документами Office, включая Project. Он хорошо работает для своих целей, но, опять же, они использовали его только для Word и Excel, поэтому не могут дать много советов по Project.
РЕДАКТИРОВАТЬ (2019): Я могу подтвердить, что это очень способный продукт.
Ответ 5
Sourcefourge.net предлагает компонент на Java, который может быть интегрирован с приложениями .net для чтения файлов MPP до MPP 2007, ссылка
http://mpxj.sourceforge.net/getting-started.html