Console yourself with NuGet
Whether you love it or hate it, NuGet has made the distribution of .NET libraries much easier than the days of downloading dlls and sticking them in some arbitrary solution folder for reference. Over the past year or so I’ve found that I’ve had to do a fair few console applications so here is a list of some NuGet packages that I used which you may find useful. Note that not all are limited to use in console applications.
In no particular order (descriptions are taken from NuGet).
Topshelf
Topshelf is an open source project for hosting services without friction. By referencing Topshelf, your console application becomes a service installer with a comprehensive set of command-line options for installing, configuring, and running your application as a service.
PowerArgs
The ultimate .NET command line parser - PowerArgs converts command line arguments into .NET objects that are easy to program against. It also provides a ton of additional, optional capabilities that you can try such as argument validation, auto generated usage documentation, tab completion, Entity Framework querying, secure string arguments, and plenty of hooks for extensibility.
Squirrel for Windows
An installation and update framework for Windows applications.
Serilog
Simple .NET logging with fully-structured events.
ConfigR
Write your .NET configuration files in C#.
Fed up with XML soup? Frustrated that app settings can only be strings? Want to do more in your configuration file than just define app settings? Then ConfigR is for you!
Akka
Akka.NET is a port of the popular Java/Scala framework Akka to .NET
I’m slightly biased towards the last two as I’m a contributor 😝
ColoredConsole
Add some color to your console.
|
|
ArcGIS.PCL
ArcGIS.PCL can be used to call ArcGIS Server resources, including those from Portal for ArcGIS and ArcGIS Online. The resources can be secure or unsecure and the ArcGIS Online token service and OAuth token service are supported.
Also supports converting GeoJSON <-> ArcGIS Features.
This list is by no means exhaustive but hopefully you found something useful.
What packages do you use? Sound off in the comments.