Visual studio project management
Use when when you have cloned a multi-framework .NET project (e.g., MsdialWorkbench using .NET Framework 4.7.2, .NET Core 3.1, and .NET 6) and need to set up the build environment in Visual Studio, restore dependencies, select a specific build configuration (e.From its SKILL.md
npx -y skills add HolobiomicsLab/asb-skill-collections --skill visual-studio-project-managementAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
9.8 KB, ~1.8k tokens by cl100k_base, as published. Nobody here has run it
visual-studio-project-management
Summary
Configure and build a .NET multi-framework WPF application in Visual Studio by managing solution-level NuGet dependencies, selecting appropriate build configurations, and verifying successful compilation and runtime execution. This skill is essential for developers who need to reconstruct complex open-source metabolomics software from source.
When to use
When you have cloned a multi-framework .NET project (e.g., MsdialWorkbench using .NET Framework 4.7.2, .NET Core 3.1, and .NET 6) and need to set up the build environment in Visual Studio, restore dependencies, select a specific build configuration (e.g., 'Debug vendor unsupported' vs. 'Release'), and ensure the WPF GUI application compiles and launches without errors on a Windows system.
When NOT to use
- Input is a non-.NET project or uses a different UI framework (e.g., WinForms, ASP.NET, Qt) — use framework-specific build tools instead.
- Solution file references external NuGet repositories that are no longer available or require authentication not configured — resolve repository connectivity first.
- Target platform is not Windows or .NET Framework 4.7.2 runtime is not installed on the build machine — install required runtime or target a different framework.
Inputs
- Visual Studio solution file (.sln)
- Project files (.csproj) with .NET Framework 4.7.2 target
- NuGet dependencies manifest (packages.config or .csproj package references)
- WPF XAML and C# source files
- Local Assemblies folder containing pre-built package binaries
Outputs
- Compiled WPF executable (MsdialGuiApp.exe)
- Build artifacts in bin/Debug or bin/Release directory
- Successfully launched GUI application instance
- Build log with zero errors
How to apply
Open the solution file (e.g., MsdialWorkbench.sln) in Visual Studio Community 2022 with .NET desktop development workload installed. Add the local Assemblies folder to NuGet Package sources via 'Manage NuGet Packages for Solution' to resolve framework dependencies (ReactiveExtensions, ReactiveProperty, and other packages adhering to .NET Standard 2.0). Select the appropriate Solution Configuration from the dropdown (e.g., 'Debug vendor unsupported' for open-source builds that support only mzML, abf, and cdf formats). Designate MsdialGuiApp as the Startup Project, then build using Visual Studio's integrated build system. Verify that the executable binary is generated in the output directory (bin/Release or bin/Debug) and confirm the application launches on a Windows system with the required .NET Framework 4.7.2 runtime installed.
Related tools
- Visual Studio Community 2022 (Primary IDE for opening solution, managing NuGet packages, selecting build configurations, and compiling the WPF application) — https://visualstudio.microsoft.com/
- .NET Framework 4.7.2 (Target framework for MsdialGuiApp WPF project compilation and runtime execution)
- ReactiveExtensions (NuGet package dependency for reactive programming patterns in WPF UI)
- ReactiveProperty (NuGet package dependency for reactive property bindings in WPF data models)
- WPF (Windows Presentation Foundation) (UI framework used for GUI implementation; managed by Visual Studio's design and build toolchain)
- MsdialWorkbench (Source repository containing solution and project files to be built) — https://github.com/systemsomicslab/MsdialWorkbench
Evaluation signals
- Build output shows zero errors and zero warnings (or only expected warnings from third-party packages).
- Executable file (MsdialGuiApp.exe) is present in bin/Release or bin/Debug directory with a recent timestamp matching the build time.
- Application launches without throwing unhandled exceptions; GUI window renders and responds to user input.
- NuGet restore completes successfully with all ReactiveExtensions, ReactiveProperty, and .NET Standard 2.0 packages resolved from local or remote sources.
- Solution Configuration dropdown reflects the selected build variant (e.g., 'Debug vendor unsupported' shows mzML/abf/cdf format support; 'Release' variant may include vendor SDKs if licensed).
Limitations
- The 'Debug/Release vendor unsupported' configuration is restricted to open-source distribution and supports only mzML, abf (Reifycs), and cdf (NetCDF) raw data formats; proprietary mass spectrometry vendor formats require the official release build with vendor SDKs, which is not available in the open-source repository.
- Unit testing infrastructure for partial functionalities is not currently set up, so developers cannot rely on automated test suites to validate changes during development.
- Only MS-DIAL version 5 series provides reproducible builds guaranteed to be openly reproducible; earlier versions may have build reproducibility issues.
- Visual Studio 2022 with .NET desktop development workload is required; Visual Studio Code, while mentioned as a coding environment, does not provide the integrated build and NuGet management UI used in this workflow.
- Build success depends on Windows operating system and .NET Framework 4.7.2 runtime; cross-platform builds to Linux or macOS are not supported by this WPF project.
Evidence
- [methods] we recommend using Visual Studio: "we recommend using Visual Studio"
- [methods] we primarily utilize the frameworks of .NET Framework 4.7.2, .NET Core 3.1, and .NET 6: "we primarily utilize the frameworks of .NET Framework 4.7.2, .NET Core 3.1, and .NET 6"
- [methods] utilizing packages such as ReactiveExtensions and ReactiveProperty: "utilizing packages such as ReactiveExtensions and ReactiveProperty"
- [methods] we are using the WPF (Windows Presentation Foundation) UI framework for GUI implementation: "we are using the WPF (Windows Presentation Foundation) UI framework for GUI implementation"
- [readme] Double click
MsdialWorkbench.slnin the cloned repo. Right-click onMsdialWorkbenchin the Solution Explorer. ClickManage NuGet Packages for Solution.... Add theAssembliesfolder in this repo to the Package source:.: "Double clickMsdialWorkbench.slnin the cloned repo. Right-click onMsdialWorkbenchin the Solution Explorer. ClickManage NuGet Packages for Solution.... Add theAssembliesfolder in this" - [readme] Select
Debug vendor unsupportedfrom theSolution Configurationspull-down menu. SelectMsdialGuiAppfrom theStartup Projectspull-down menu. Click▶ MsdialGuiAppbutton on the right side of 8.: "SelectDebug vendor unsupportedfrom theSolution Configurationspull-down menu. SelectMsdialGuiAppfrom theStartup Projectspull-down menu. Click▶ MsdialGuiAppbutton on the right side" - [readme] The 'Debug/Release vendor unsupported' version is a special configuration designed for the purpose of source code distribution. Due to licensing restrictions, this version cannot read proprietary data formats from mass spectrometry manufacturers. However, the release versions distributed with official releases can read these proprietary formats. For the 'Debug/Release vendor unsupported' version, only the following formats are supported: abf(Reifycs), cdf(NetCDF), and mzml.: "The 'Debug/Release vendor unsupported' version is a special configuration designed for the purpose of source code distribution. Due to licensing restrictions, this version cannot read proprietary"
- [readme] Download and install Visual Studio Community 2022. (In the
Workloadsselection, choose.NET desktop development. ): "Download and install Visual Studio Community 2022. (In theWorkloadsselection, choose.NET desktop development. )" - [methods] only the version 5 series of MS-DIAL has reproducible builds that can be guaranteed openly: "only the version 5 series of MS-DIAL has reproducible builds that can be guaranteed openly"
- [methods] we apologize that the unit testing aspect for partial functionalities is not currently set up for trial: "we apologize that the unit testing aspect for partial functionalities is not currently set up for trial"
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.