Managed Package Framework for Projects
Visual Studio 2010
This project contains sample code for creating a new Project System in Visual Studio 2010.
Note: If you need to write a Project System for Visual Studio 2008, please use the version of MPFProj available at:
A community project containing the source code and tests of a library for creating project system plug-ins for Visual Studio 2010 using C#.
Requirements for Building the Source Code
- Visual Studio 2010
- Visual Studio 2010 SDK
Building & testing the Visual Studio Managed Package Framework for Projects
Open the following solution to run the tests and browse the source code:
- Nested Project Sample
- Unit tests
- Integration Tests
Referencing the Visual Studio Managed Package Framework for Projects
Note that there is no project for building an assembly that can be referenced. Instead, you should import the the MPF project sources directly into your project in order to build them. This can be done by importing the ProjectBase.files MSBuild file into your
C# project. Please see NestedProject.csproj and CustomProject.csproj for examples of how to do this.
There are two sample projects that use the library included with the source code.
- CustomProject - a simple project system
- NestedProject - a project system that supports nesting.
How to run the tests
The tests can be found in the Microsoft.VisualStudio.Project.Tests.sln and can be executed through Microsoft.VisualStudio.Project.Tests.vsmdi.
There are two type of tests:
- Unit tests using mock/fake objects
- Integration tests. These tests create a Nested project type and execute the tests on the nested project.
Feel free to join the MPFProj community by
- Either creating new or finding existing bugs or feature requests you want to work on
- Leave a note in the comments that you're going to investigate this bug (until you have developer rights, you won't be able to assign bugs to yourself)
- Download the latest sources and create a bug fix
- Zip up your changes and post them as an attachment to the work item
- Talk with the moderators to get an assignment agreement form, fill it out and follow the enclosed instructions to send it to us.