sln迁移到slnx
前言
sln解决方案有了新版本slnx,slnx比sln有很多的有点:- 格式简单命令
- 减少一些配置信息,改为默认配置
- 移除依赖VS Studio版本信息
如何将sln转为slnx
在sln所在目录使用命令进行迁移dotnet sln migrate执行迁移命令后,在目录内可以看到slnx文件,我们对比一下sln和slnx,先看一下sln
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.2.32505.173
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ConsoleApp", "ConsoleApp.csproj", "{6DDB5088-F587-4762-A8EA-9B68B646A495}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CryptoHelper", "..\..\..\gitcode\CryptoHelper\src\CryptoHelper\CryptoHelper.csproj", "{3E0CEECC-25F7-4703-A095-705D0E5FEDB1}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "QiufengWindows", "..\QiufengWindows\QiufengWindows.csproj", "{C81DE3E7-0414-4BE5-85D6-65A847B5220E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ConsoleApp1", "..\ConsoleApp1\ConsoleApp1.csproj", "{C4D4BC92-9D72-4ED6-84C2-C61560A9AD29}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EmptyBlazorApp1", "..\EmptyBlazorApp1\EmptyBlazorApp1.csproj", "{127C54E9-392E-42C5-9B0B-FD68FEC1B232}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "aspcorecode", "..\aspcorecode\aspcorecode.csproj", "{0B2AC4E4-4E50-4D58-AC55-357F8575E140}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenCVApp", "..\OpenCVApp\OpenCVApp.csproj", "{2D318D0A-FE52-4270-A5E7-EE9335C2F58B}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebApi", "..\WebApi\WebApi.csproj", "{1DB36014-86BE-46B3-AC24-FC3C4C0609D7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConsoleAppForAot", "..\ConsoleAppForAot\ConsoleAppForAot.csproj", "{172A0121-F966-486B-928F-774141F2CDFC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "orm_sqlsugar", "E:\softwares\6384673903196805802128437\orm_sqlsugar\orm_sqlsugar.csproj", "{FBB77ECA-DCCF-5A13-D38C-4DD0493BD679}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SqlExplanReport", "..\SqlExplanReport\SqlExplanReport.csproj", "{39CCEACA-1B4D-4BE0-A878-56CCF1396E2E}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{6DDB5088-F587-4762-A8EA-9B68B646A495}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6DDB5088-F587-4762-A8EA-9B68B646A495}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6DDB5088-F587-4762-A8EA-9B68B646A495}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6DDB5088-F587-4762-A8EA-9B68B646A495}.Release|Any CPU.Build.0 = Release|Any CPU
{3E0CEECC-25F7-4703-A095-705D0E5FEDB1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3E0CEECC-25F7-4703-A095-705D0E5FEDB1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3E0CEECC-25F7-4703-A095-705D0E5FEDB1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3E0CEECC-25F7-4703-A095-705D0E5FEDB1}.Release|Any CPU.Build.0 = Release|Any CPU
{C81DE3E7-0414-4BE5-85D6-65A847B5220E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C81DE3E7-0414-4BE5-85D6-65A847B5220E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C81DE3E7-0414-4BE5-85D6-65A847B5220E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C81DE3E7-0414-4BE5-85D6-65A847B5220E}.Release|Any CPU.Build.0 = Release|Any CPU
{C4D4BC92-9D72-4ED6-84C2-C61560A9AD29}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C4D4BC92-9D72-4ED6-84C2-C61560A9AD29}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C4D4BC92-9D72-4ED6-84C2-C61560A9AD29}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C4D4BC92-9D72-4ED6-84C2-C61560A9AD29}.Release|Any CPU.Build.0 = Release|Any CPU
{127C54E9-392E-42C5-9B0B-FD68FEC1B232}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{127C54E9-392E-42C5-9B0B-FD68FEC1B232}.Debug|Any CPU.Build.0 = Debug|Any CPU
{127C54E9-392E-42C5-9B0B-FD68FEC1B232}.Release|Any CPU.ActiveCfg = Release|Any CPU
{127C54E9-392E-42C5-9B0B-FD68FEC1B232}.Release|Any CPU.Build.0 = Release|Any CPU
{0B2AC4E4-4E50-4D58-AC55-357F8575E140}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0B2AC4E4-4E50-4D58-AC55-357F8575E140}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0B2AC4E4-4E50-4D58-AC55-357F8575E140}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0B2AC4E4-4E50-4D58-AC55-357F8575E140}.Release|Any CPU.Build.0 = Release|Any CPU
{2D318D0A-FE52-4270-A5E7-EE9335C2F58B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2D318D0A-FE52-4270-A5E7-EE9335C2F58B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2D318D0A-FE52-4270-A5E7-EE9335C2F58B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2D318D0A-FE52-4270-A5E7-EE9335C2F58B}.Release|Any CPU.Build.0 = Release|Any CPU
{1DB36014-86BE-46B3-AC24-FC3C4C0609D7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1DB36014-86BE-46B3-AC24-FC3C4C0609D7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1DB36014-86BE-46B3-AC24-FC3C4C0609D7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1DB36014-86BE-46B3-AC24-FC3C4C0609D7}.Release|Any CPU.Build.0 = Release|Any CPU
{172A0121-F966-486B-928F-774141F2CDFC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{172A0121-F966-486B-928F-774141F2CDFC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{172A0121-F966-486B-928F-774141F2CDFC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{172A0121-F966-486B-928F-774141F2CDFC}.Release|Any CPU.Build.0 = Release|Any CPU
{FBB77ECA-DCCF-5A13-D38C-4DD0493BD679}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FBB77ECA-DCCF-5A13-D38C-4DD0493BD679}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FBB77ECA-DCCF-5A13-D38C-4DD0493BD679}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FBB77ECA-DCCF-5A13-D38C-4DD0493BD679}.Release|Any CPU.Build.0 = Release|Any CPU
{39CCEACA-1B4D-4BE0-A878-56CCF1396E2E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{39CCEACA-1B4D-4BE0-A878-56CCF1396E2E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{39CCEACA-1B4D-4BE0-A878-56CCF1396E2E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{39CCEACA-1B4D-4BE0-A878-56CCF1396E2E}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {FD10C0FE-DC1C-4601-9532-BAB8D5C3F596}
EndGlobalSection
EndGlobal在看一下slnx,会发现slnx,内容简单明了,文件体积大幅度减少.
<Solution>
<Project Path="../../../gitcode/CryptoHelper/src/CryptoHelper/CryptoHelper.csproj" />
<Project Path="../aspcorecode/aspcorecode.csproj" />
<Project Path="../ConsoleApp1/ConsoleApp1.csproj" />
<Project Path="../ConsoleAppForAot/ConsoleAppForAot.csproj" />
<Project Path="../EmptyBlazorApp1/EmptyBlazorApp1.csproj" />
<Project Path="../OpenCVApp/OpenCVApp.csproj" />
<Project Path="../QiufengWindows/QiufengWindows.csproj" />
<Project Path="../SqlExplanReport/SqlExplanReport.csproj" />
<Project Path="../WebApi/WebApi.csproj" />
<Project Path="ConsoleApp.csproj" />
<Project Path="E:/softwares/6384673903196805802128437/orm_sqlsugar/orm_sqlsugar.csproj" />
</Solution>对比两个文件的大小;
最近发现不少开源项目,已经sln迁移为sln下,如MySqlConnector/npgsql,当然.Net BCL(在7月份)和Asp.Net Core(七八月份)的不少解决方案也从sln迁移为slnx,如果是新项目,建议将解决方案sln迁移为slnx.
秋风
2025-11-02
