3F / MvsSln

🧩 Customizable VisualStudio .sln parser with project support (.vcxproj, .csproj., …). Pluggable lightweight r/w handlers at runtime, and more …
MIT License
140 stars 27 forks source link

Removal of project/solution configurations... #54

Closed davidcorbin-atmosera closed 6 months ago

davidcorbin-atmosera commented 2 years ago

Over time, project/solutions get lots of build configurations added. I have successfully iterated and found a list and now want to purge...

Going manually into Visual Studio and deleting is not an option (I am looking at nearly 10K kills!!!!)... nut I am also not seeing a way to modify the collections and re-write the respective project (including .vcxproj, and vcsproj) files...

Am I missing something? Are heir any recommendations? Do I have to start writing raw tooling?

Thanks in Advance

3F commented 2 years ago

Hello David, Did you try something like https://github.com/3F/MvsSln/discussions/42

About locked collections in sln result, see #9 But it's all about convenience and you can re-write (construct) anything using collections at runtime through map and its writer.

Some related example can be found also here https://github.com/3F/MvsSln/discussions/43#discussioncomment-371185

"Do I have to start writing raw tooling?"

Not for this, since that's a common use. I recommend to start detailed Q&A in Discussions here to find some final solutions in your case.

Unfortunately I may be very slow to respond due to many reasons beyond my control. But maybe someone else will be faster than me.

On 24.08.2022 15:02, David V. Corbin wrote:

Over time, project/solutions get lots of build configurations added. I have successfully iterated and found a list and now want to purge...

Going manually into Visual Studio and deleting is not an option (I am looking at nearly 10K kills!!!!)... nut I am also not seeing a way to modify the collections and re-write the respective project (including .vcxproj, and vcsproj) files...

Am I missing something? Are heir any recommendations? Do I have to start writing raw tooling?

Thanks in Advance

3F commented 6 months ago

I close the issue because I don't see the problem.

All collections exist at runtime. You will be able to prepare everything you may need in your case even if something is locked for modifications in a final result (as I mentioned earlier); after, configure handlers and save the result. That's all.

Note, 2.7 provides new additional ways to prepare the default handlers in a few steps like:

LhDataHelper hdata = new();
hdata.SetProjects(projects)
        .SetProjectConfigs(prjConfs)
        .SetSolutionConfigs(slnConf);

using SlnWriter w = new(solutionFile, hdata);
await w.WriteAsync(sln.Result.Map);

Feel free to open an issue again if the problem still exists.