Add MSBuild conditional support for .slnx files #2
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR enables
.slnxfiles (XML-based solution files) to be recognized as MSBuild files, allowing them to support MSBuildConditionattributes in addition to XML comment-style conditionals.Problem
Currently,
.slnxfiles only support XML comment-style conditionals:However, MSBuild
Conditionattributes were not recognized and would be ignored:This is inconsistent with other MSBuild files (
.csproj,.targets,.props) which support both conditional styles.Solution
Updated the configuration to treat
.slnxfiles as MSBuild files by:ConditionalTypefromXmltoMSBuildEvaluatorTypefromCPPtoMSBuild"#-"to"<!--/"to match other MSBuild files.slnxin the MSBuild file extensions listResult
.slnxfiles now support both conditional styles:Benefits
.slnxfiles now behave like other MSBuild files<!--#if-->syntax continue to workFixes dotnet#9370
Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
7devsblobprodcus323.vsblob.vsassets.io/home/REDACTED/work/templating/templating/.dotnet/dotnet msbuild /m /nologo /clp:Summary /v:minimal /nr:true /warnaserror /p:TreatWarningsAsErrors=true /p:ContinuousIntegrationBuild=false /home/REDACTED/work/templating/templating/artifacts/toolset/restore.proj /t:__WriteToolsetLocation /clp:ErrorsOnly;NoSummary /p:__ToolsetLocationOutputFile=/home/REDACTED/work/templating/templating/artifacts/toolset/11.0.0-beta.25479.108.txt(dns block)/usr/share/dotnet/dotnet build /home/REDACTED/work/templating/templating/src/Microsoft.TemplateEngine.Orchestrator.RunnableProjects/Microsoft.TemplateEngine.Orchestrator.RunnableProjects.csproj --no-restore(dns block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.