FastEasy.SqlADO 1.0.0

dotnet add package FastEasy.SqlADO --version 1.0.0                
NuGet\Install-Package FastEasy.SqlADO -Version 1.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FastEasy.SqlADO" Version="1.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add FastEasy.SqlADO --version 1.0.0                
#r "nuget: FastEasy.SqlADO, 1.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install FastEasy.SqlADO as a Cake Addin
#addin nuget:?package=FastEasy.SqlADO&version=1.0.0

// Install FastEasy.SqlADO as a Cake Tool
#tool nuget:?package=FastEasy.SqlADO&version=1.0.0                

FastEastSqlADO

Fast & Easy Sql ADO library

Description

Simplify and standardize your Database related code! This is a low level Sql ADO library that targets MS Sql Server databases. It takes advantage of all the methods that exists in ADO. It features robust error handling, built in logging and async methods where ADO supports them. Plus a few other useful methods.

Main methods:

  • ExecuteQuery
  • ExecuteScalar<T>
  • ExecuteScalarAsync<T>
  • ExecuteNonQuery
  • ExecuteNonQueryAsync
  • AddSqlServerPerformancePaging
  • CreateSqlServerConnectionString
  • IsConnectionOk
  • IsConnectionOkAsync

Useful properties:

  • DatasetResult (results are retrieved here)
  • ExceptionMessageStack (full error message stack)
  • IsException (verify execution)
  • TimeUsedMs (how much time was spent)
  • RowsAffected (rows by the latest sql statement)
  • DataTables (number of datatables returned)
  • SqlLogging (activate/deactivate sql logging)

Getting Started

Documentation and examples of how to use features are available in the word document in the root folder in the Git repository

Dependencies

  • Microsoft.Data, Microsoft.Data.SqlClient, Newtonsoft.Json

Executing program

  • Always remember to add the proper using statement after installing the nuget package.
using FastEasySqlADO;
  • Execute a sql count statement
            // Create connection string
            var ConnStr = DbClient.CreateSqlServerConnectionString(
			    Server: ".", // Executing on local machine
			    Database: "TestDb",
			    Username: "TestUser",
			    Password: "TestPw"
			    );

            // Init
            DbClient Db = new(ConnStr);

            // Execute
            int PeopleFound = Db.ExecuteScalar<int>(@"SELECT COUNT(*) FROM People");

            // Output result
            Console.WriteLine($"There were {PeopleFound} people found");
  • Execute 2 Sql statements and return results using parameters

            // 2 Queries
			Sql = @"SELECT FirstName, SirName FROM People WHERE FirstName LIKE @Search1;
			    SELECT * FROM People WHERE SirName LIKE @Search2;";

			// Execute statement
			Db.ExecuteQuery(Sql, new { Search1 = "%A%", Search2 = "R%" });
			
			// Handle possible exceptions and output results
			if (Db.IsException)
			{
			    Console.WriteLine($"EXCEPTION: {Db.ExceptionMessageStack}");
			}
			else 
			{
			    // Display result as Json
			    Json = Db.DatasetResult2Json(true);
			    Console.WriteLine($"DataSetResult as Json:\n{Json}");
			}

Authors

Erik Burøy

Version History

  • 1.0
    • Initial Release

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  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. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0 112 9/26/2023

This is the initial release