Query on ASPOSE feature for MPP

HI,
I have the requirement to allow the users to upload mpp file in my web application and my application should be able to read the mpp file (without saving the file physically on the server) and then application should also be able read content from database and generate a mpp file and allow user to save the file on their local machine, again without saving the file physically on the server). I am building my application using .Net 4.5, MVC 5.0. Can ASPOSE help me in reading and writing in mpp file in a stream?

Hi Vikas,

Thank you for writing to Aspose support team.

You may please use following code to read the project from stream.

Project projFromStr = new Project(stream);

Once the project is read, you may use database calls to create or update it. Following code can be used to write the project to a stream.

MemoryStream stream = new MemoryStream();

//Write project to stream
proj.Save(stream, SaveFileFormat.MPP);

Should you have any other query in this regard, please feel free to write us back.

Hi,

Thanks for the response. So it means that ASPOSE supports reading mpp from stream and then adding task in a mpp project and then save it as a stream. Please suggest as how can I try sample code and what are the pricing details for procurement.

Vikas

Hi Vikas,


Thank you for sharing your feedback.

You can use the code sample shared above to load a project from Memory stream, modify its tasks information, do any other modifications, and then save back to memory stream. You can also refer to our documentation section, Working with Projects and Tasks, for further working examples on this.

Please note that you will need a license to get proper dates as there are evaluation limitations applied if license is not used. You can get a 30-day temporary license to try all the features before going for a purchase. Once you get a temporary license for completely evaluating the API, please follow the instructions in our documentation article, Applying a License, for applying license.

Please feel free to write to us if you have further query about the usage of the API.

Hi,



Thanks for the response. Can you please also confirm that whether ASPOSE for task uses Microsoft interop assembly or not for reading / writing in mpp.

The reason I am asking is that in my company, it is not allowed to install interop assemblies on the server.

Also I was trying to create a POCs using sample for saving in stream, but I got the exception that

project.Save(stream, SaveFileFormat.MPP); is not allowed in evaluation copy.

It is important for me to test this feature as well as get clarification on interop assembly before I can make any decision



Vikas

Hi Vikas,


Aspose.Tasks and any other Aspose API doesn’t use Microsoft Interop assembly. You can use the API on any machine where you will only need .NET Framework to be installed. Please let us know if you have any other query related to the API.

Thanks.
I was trying to create a POCs using example sample for saving mpp in stream, but I got the exception that
project.Save(stream, SaveFileFormat.MPP); is not allowed in evaluation copy.
It is important for me to test this feature. Can you please suggest how can I test it.

Hi Vikas,


If you are creating a new MPP in project and then saving it to stream/disc, it is not supported at the moment and you will get non-supported exception. You will have to load an existing MPP file, make the changes and then save it as MPP. Also, as mentioned, please get a 30-day temporary license to avoid evaluation limitations.

Thanks. I was able to test the sample and it seems to be working fine. I would like to know some performance numbers / performance rating as well in case my application is being used by 10 concurrent users for mpp upload / download and mpp has varying number of task ranging from 1000 task till 20,000.



Hi Vikas,


We don’t have any such performance rating available with us but we do have tested the performance against four thousand plus tasks having resources and it didn’t raise any performance hit. Please try the API without evaluation limits at your end and feel free to contact us if you have any reservation about the API performance.