Accéder par programme à un fichier Microsoft Project (MPP) à partir de C #

StackOverflow https://stackoverflow.com/questions/153593

  •  03-07-2019
  •  | 
  •  

Question

Quelles sont mes options pour accéder par programme à un fichier Microsoft Project? Quels sont les avantages et les inconvénients de chaque approche?

J'aurai essentiellement besoin d'importer toutes les données du fichier dans une autre structure de données. L'utilisation des assemblages Office Interop est faible sur l'échelle des préférences.

Était-ce utile?

La solution

Voici les options:

  1. Interop (désordonné et horriblement lent pour grands projets)
  2. Enregistrez le projet en XML et travaillez-le (en désordre)
  3. Enregistrer le projet dans la base de données (c'est ne pas publier et il est disponible pour le projet 2003 uniquement - voir ODBC option lors de la sauvegarde). Je l'ai vu étant beaucoup utilisé dans l'intégration scénarios
  4. Projette (publicité, 10 $ par licence)
  5. Visionneuse de projets ILog (également commercial)

Autres conseils

La bibliothèque MPXJ ( mpxj.sf.net ) est disponible en versions Java et .Net et vous permet de lire et écrire plusieurs formats de fichier Microsoft Project en utilisant une seule API cohérente. Je connais des produits commerciaux qui utilisent sans problème les versions Java et .Net de MPXJ.

Clause de non-responsabilité: je suis le responsable de MPXJ.

Vous pouvez utiliser Aspose.Tasks pour .NET . Ce composant vous permet de travailler avec Microsoft Project. fichiers . Il n'est pas nécessaire que MS Office soit installé sur le serveur, contrairement à Office Interop. L'API est très simple et facile à utiliser. Et il fournit un riche ensemble de fonctionnalités pour lire, éditer, écrire et convertir des fichiers MPP.

Ce composant est un assemblage .NET normal pouvant être utilisé avec vos applications .NET. Il fonctionne sur tous les systèmes d'exploitation Windows et dans les environnements 32/64 bits.

Divulgation: je travaille comme développeur évangéliste chez Aspose.

L'API Microsoft Office fournit un accès par programme à MS Project. Je ne l'ai utilisée que pour Word et Excel, donc je ne sais pas à quel point l'interface est riche. Vous devrez fouiller dans MSDN pour savoir ce que vous pouvez et ne pouvez pas faire.

L'un des projets Java de mon entreprise utilise un produit commercial de Aspose qui permet aux applications de manipuler des documents Office, y compris Project. Cela fonctionne bien pour leurs objectifs, mais encore une fois, ils ne l’ont utilisé que pour Word et Excel et ne peuvent donc pas offrir beaucoup de conseils sur Project.

EDIT (2019) : Je peux confirmer qu'il s'agit d'un produit très performant.

Sourcefourge.net propose un composant en Java qui peut être intégré aux applications .net pour lire les fichiers MPP jusqu’à MPP 2007, le lien est http://mpxj.sourceforge.net/getting-started.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top