Dear all
I am new here but with many questions in my mind. I am happy to see the way people are sharing their knowledge and experience here with each other. Let me create my questions one after the another and start asking them here with this wonderful community. Pleasure. Thank you!!
Your user name, backlinksubmission, doesn’t give me confidence that you are an actual seller!
I understand but why we are using this one because we are creating one email for one type of items. We don’t need to keep a track of many emails for one product. However, will keep it mind and will use our official email instead for betterment. Thank you for bringing this to our notice. Appreciated.
Welcome aboard! What questions do you have?
Hi,
I’m new to using .NET and want to kick things off by importing an existing project (MS Project . mpp file) and then updating its timeline details (start/end dates, milestones, etc.) programmatically.
- What’s the best way to load an .mpp file?
- How do I access and update project tasks, especially milestone dates and dependencies?
- Any best practices or caveats I should watch out for when modifying and saving changes back to .mpp?
Sample code snippets or links to relevant documentation would be much appreciated.
Thank you!
If you need to load and update .mpp
files in .NET you have three main options: use Microsoft.Office.Interop.MSProject , which requires MS Project installed locally but gives full read/write control; use Aspose.Tasks for .NET , a commercial library that works without MS Project and is the most reliable choice for server or cloud automation; or use MPXJ , a free open-source library that can read .mpp
but cannot save back to that format (only XML/MPX). With Interop you can open a project, loop through tasks, update start/finish dates, set milestones, and adjust predecessors, but it’s limited to desktop scenarios; with Aspose you can achieve the same programmatically and also add task links, then save directly back to .mpp
. Best practices include always backing up the file before writing, validating dependency strings, and choosing your library based on whether you only need to read data (MPXJ), work on a workstation with Project installed (Interop), or handle robust read/write automation in production (Aspose).