DotNET Build Buddy automatically manages your .NET project files. This guide will help you get the most out of the extension.
- Create Source Files: Start by creating your .NET source files (.cs, .fs, .vb)
- Auto-Detection: The extension automatically detects files and creates project files
- Solution Generation: Run the command "Generate Solution File" to create a solution
Access commands via Command Palette (Ctrl+Shift+P):
- Generate Solution File: Creates/updates
Solution.slnwith all projects - Update Project Files: Updates all project files based on current source files
- Refresh All .NET Files: Updates both projects and solution
- Create a new
.cs,.fs, or.vbfile in your workspace - The extension automatically:
- Detects the new file
- Updates the appropriate project file
- Includes the file in the project
The extension groups files by:
- Directory Structure: Files in the same directory are grouped together
- File Type: C#, F#, and VB.NET files are separated into different projects
- Language: Each language gets its own project file
Project files are created in the directory containing the source files:
src/MyProject.cs→src/MyProject.csprojsrc/Calculator.fs→src/Calculator.fsprojsrc/Helper.vb→src/Helper.vbproj
The extension automatically checks NuGet package compatibility:
- Automatic Checks: When you open a project file, compatibility is checked
- Inline Diagnostics: Problems appear as underlines in the editor
- Tooltips: Hover over problematic packages for detailed information
- Red Underline: Incompatible package (error)
- Yellow Underline: Version mismatch or deprecated (warning)
- Tooltip: Hover to see details and suggestions
When you see suggestions:
- Version Suggestions: Update your package version to the suggested one
- Alternative Packages: Consider switching to the suggested alternative
- Framework Upgrades: Evaluate upgrading your target framework
Before:
<PackageReference Include="EntityFramework" Version="6.4.4" />
<!-- Red underline appears -->After:
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.0" />
<!-- Compatibility check passes -->Open Settings (Ctrl+,) and search for "dotnetBuildBuddy":
- Auto Update: Enable/disable automatic file updates
- Watch Patterns: Customize which files to monitor
- Exclude Patterns: Specify directories to ignore
- Enable Checks: Turn NuGet compatibility checking on/off
- API Integration: Enable/disable real-time package lookups
- Caching: Control cache behavior for performance
- Ignore Packages: Skip compatibility checks for specific packages
See Configuration Reference for details.
The extension automatically:
- Detects your project's target framework
- Suggests compatible package versions
- Recommends framework upgrades when appropriate
The extension checks:
- Direct package dependencies
- Transitive dependencies (dependencies of dependencies)
- Framework compatibility at all levels
The extension provides:
- Version corrections for incompatible packages
- Alternative package recommendations
- Framework upgrade suggestions based on package support
- Group related files in the same directory
- Use consistent naming conventions
- Keep project files in source directories
- Review compatibility warnings regularly
- Follow version suggestions when safe
- Consider framework upgrades for better compatibility
- Ignore packages only when necessary
- Keep API integration enabled for best results
- Use caching to improve performance
- Always review upgrade suggestions before applying
- Test alternative packages before switching
- Verify transitive dependency issues
- Create your source files
- Let the extension generate project files automatically
- Add NuGet packages as needed
- Review compatibility suggestions
- Generate solution file when ready
- Add new source files
- Extension auto-updates project files
- Check for compatibility issues
- Address any warnings or errors
- Review framework upgrade suggestions
- Check package compatibility
- Update target framework in project file
- Verify all packages are compatible
- Test your application
For detailed troubleshooting, see Troubleshooting Guide.
- Extension not working: Restart VS Code
- Files not detected: Check exclude patterns
- Compatibility errors: Review suggestions and update packages
- Performance issues: Enable caching and adjust timeout settings