Использование MPXJ в .NET - PullRequest
       44

Использование MPXJ в .NET

0 голосов
/ 13 февраля 2010

Я пытаюсь работать с файлами MS Project в приложении ASP.NET и натолкнулся на библиотеку MPXJ , которая началась на Java и также была преобразована в версию .NET. Он отлично работает в .NET, но с этим я сталкиваюсь с трудностью в том, что все его методы используют типы данных Java, а не нативные .NET. Это означает, что для таких вещей, как форматирование возвращаемой даты или числа, мне нужно прочитать java.text.NumberFormat и другие способы взаимодействия с вещами в стиле Java.

Итак, мой вопрос: я делаю что-то не так или мне нужно программировать в «стиле Java» для взаимодействия с этой библиотекой в ​​.NET? Я, конечно, могу справиться с этим, но я не уверен, что это будет означать для удобства сопровождения в будущем, когда кто-то посмотрит на мой код.

Полагаю, что другая часть этого вопроса будет такой: есть ли какой-нибудь другой хороший, бесплатный механизм взаимодействия с файлами .mpp, кроме MPXJ? Два других варианта, которые я видел, это: а) установка MS Project на сервере и использование поставщика OLEDB (не удается установить, потому что это общий хостинг) и б) покупка компонента Aspose.Tasks (не менее 600 долларов США).

1 Ответ

2 голосов
/ 26 февраля 2010

Я поддерживаю MPXJ, поэтому я подумал, что было бы полезно поздороваться и сообщить, что я обдумывал.

Чтобы ответить на ваш первый вопрос, я не думаю, что вы делаете что-то не так, я также искал способы передачи между типами Java и .Net при использовании версии MPXJ IKVM, и, похоже, быть какие-либо устоявшиеся решения там. Я все еще смотрю, хотя!

В настоящее время я нахожусь в процессе добавления поддержки Project 2010 в MPXJ, но после выяснения этого я собираюсь исследовать использование фабрики типов данных внутри MPXJ, которая в версии Java предоставит вам нативные типы Java из API и в версии IVKM .Net предоставят вам расширенные типы IVKM из API, которые реализуют знакомые интерфейсы .Net.

Цель состоит в том, чтобы разработчикам не приходилось задумываться о преобразовании типов. В большинстве случаев эти модифицированные типы должны "просто работать". Если мне не удастся предоставить утилиты преобразования типов, я бы предпочел, чтобы это было невидимо для пользователей .Net-версии.

Извините, что не могу предложить немедленное решение - но я знаю о проблеме!

...