As with solutions, projects maintain their structure information inside a file. These files have different extensions depending on their underlying language. For instance, Visual Basic project files have a .vbproj extension, and Visual C# project files have a .csproj extension.
Each project definition file contains all the information necessary to describe the source files and the various project properties and options. This includes the following:
• Build configurations
• Project references and dependencies
• Source code file locations/types
Visual Basic and Visual C# project definition files are based on the same schema. Listing 4.2 contains a snippet from a Visual C# project definition file.