slnutil 1.6.0

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global slnutil --version 1.6.0                
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local slnutil --version 1.6.0                
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=slnutil&version=1.6.0                
nuke :add-package slnutil --version 1.6.0                

slnutil

A collection of utilities for working with .NET Core Solutions and Projects.

Written by Benjamin Day
Pluralsight Author | Microsoft MVP | Scrum.org Professional Scrum Trainer
https://www.benday.com
info@benday.com

Got ideas for utilities you'd like to see? Found a bug? Let us know by submitting an issue https://github.com/benday-inc/slnutil/issues. Want to contribute? Submit a pull request.

Installing

The slnutil is distributed as a .NET Core Tool via NuGet. To install it go to the command prompt and type
dotnet tool install slnutil -g

Prerequisites

Commands

Command Name Description
rename Bulk rename for files and folders.
cleanreferences Simplifies package references in a C# project file. Mostly this fixes stuff in the EF Core references that breaks Azure DevOps & GitHub builds like PrivateAssets and IncludeAssets directives.
devtreeclean Clean development folder tree. Removes node_modules, .git, bin, obj, and TestResults folders.
findsolutions Find solution files in a folder tree.
getconnectionstring Get database connection string in appsettings.json.
listpackages-oldstyle Lists packages referenced in legacy style packages.config files.
listsolutionprojects Gets list of projects in a solution.
replacetoken Replace token in file.
setconnectionstring Set database connection string in appsettings.json.
setframework Set the target framework version on all projects.
setjsonvalue Set a string value in a json file.
base64 Encodes a string value as a base 64 string.
validateconnectionstring Validate that specified connection string can connect to SQL Server.

rename

Bulk rename for files and folders.

Arguments

Argument Is Optional Data Type Description
rootdir Optional String Starting directory for the rename operation
from Required String String to search for and replace
to Required String Replacement value
preview Optional Boolean Preview changes
recursive Optional Boolean Recurse the directory tree

cleanreferences

Simplifies package references in a C# project file. Mostly this fixes stuff in the EF Core references that breaks Azure DevOps & GitHub builds like PrivateAssets and IncludeAssets directives.

Arguments

Argument Is Optional Data Type Description
solutionpath Optional String Solution file to use
preview Optional Boolean Preview changes only

devtreeclean

Clean development folder tree. Removes node_modules, .git, bin, obj, and TestResults folders.

Arguments

Argument Is Optional Data Type Description
rootdir Optional String Starting directory. If not supplied, the tool uses the current directory.

findsolutions

Find solution files in a folder tree.

Arguments

Argument Is Optional Data Type Description
rootdir Required String Path to start search from
listprojects Optional Boolean List projects in solutions
csv Optional Boolean Output results as comma-separated values
skipreferences Optional Boolean Output results as comma-separated values

getconnectionstring

Get database connection string in appsettings.json.

Arguments

Argument Is Optional Data Type Description
filename Optional String Path to json config file
name Required String Name of the connection string to get

listpackages-oldstyle

Lists packages referenced in legacy style packages.config files.

Arguments

Argument Is Optional Data Type Description
rootdir Optional String Path to start search from

listsolutionprojects

Gets list of projects in a solution.

Arguments

Argument Is Optional Data Type Description
solutionpath Optional String Solution to examine. If this value is not supplied, the tool searches for a sln file automatically.
pathonly Optional Boolean Only show the project paths. Don't show the framework versions.

replacetoken

Replace token in file.

Arguments

Argument Is Optional Data Type Description
filename Required String Path to file
token Required String Token to replace
value Required String String value to set

setconnectionstring

Set database connection string in appsettings.json.

Arguments

Argument Is Optional Data Type Description
filename Optional String Path to json config file
name Required String Name of the connection string to set
value Required String Connection string value

setframework

Set the target framework version on all projects.

Arguments

Argument Is Optional Data Type Description
solutionpath Optional String Solution to examine. If this value is not supplied, the tool searches for a sln file automatically.
version Required String Framework version to set projects to.

setjsonvalue

Set a string value in a json file.

Arguments

Argument Is Optional Data Type Description
filename Optional String Path to json config file
level1 Required String First level json property name to set
level2 Optional String Second level json property name to set
level3 Optional String Third level json property name to set
level4 Optional String Fourth level json property name to set
value Required String String value to set
increment-int Optional Boolean Increment the existing value or use the '/value' as the value if it does not exist or isn't an integer.
increment-minor-version Optional Boolean Increment the minor version of the existing value or use the '/value' as the value if it does not exist or isn't an integer.

base64

Encodes a string value as a base 64 string.

Arguments

Argument Is Optional Data Type Description
value Required String Value to encode as base64

validateconnectionstring

Validate that specified connection string can connect to SQL Server.

Arguments

Argument Is Optional Data Type Description
filename Optional String Path to json config file
name Required String Name of the connection string to validate
Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
2.19.0 73 1/20/2025
2.17.0 229 11/27/2024
2.16.0 239 11/13/2024
2.15.0 152 10/31/2024
2.14.0 131 10/27/2024
2.13.0 177 10/4/2024
2.12.0 91 10/3/2024
2.11.0 216 9/10/2024
2.10.0 391 5/20/2024
2.9.0 100 5/20/2024
2.8.0 185 5/6/2024
2.7.0 118 4/24/2024
2.6.0 251 3/26/2024
2.5.0 156 2/6/2024
2.4.0 179 2/5/2024
2.3.0 145 2/5/2024
2.2.0 231 12/18/2023
2.1.0 162 12/18/2023
2.0.0 190 12/15/2023
1.10.0 235 10/4/2023
1.9.0 215 10/2/2023
1.8.0 177 8/24/2023
1.7.0 272 5/18/2023
1.6.0 220 4/21/2023
1.5.1 232 4/4/2023
1.5.0 225 4/4/2023
1.4.1 232 3/17/2023
1.4.0 228 3/7/2023
1.3.0 248 3/5/2023
1.1.1 248 3/3/2023
1.1.0 238 3/3/2023
1.0.0 238 3/3/2023