Songhay.DataAccess
6.0.0
dotnet add package Songhay.DataAccess --version 6.0.0
NuGet\Install-Package Songhay.DataAccess -Version 6.0.0
<PackageReference Include="Songhay.DataAccess" Version="6.0.0" />
paket add Songhay.DataAccess --version 6.0.0
#r "nuget: Songhay.DataAccess, 6.0.0"
// Install Songhay.DataAccess as a Cake Addin #addin nuget:?package=Songhay.DataAccess&version=6.0.0 // Install Songhay.DataAccess as a Cake Tool #tool nuget:?package=Songhay.DataAccess&version=6.0.0
Songhay.DataAccess
These reusable definitions for System.Data.Common
(ADO.NET) remind us that the excellent Entity Framework (EF) and EF Core began as an application of the types in this namespace. Microsoft preserves the 2008 article, “Writing Generic Data Access Code in ASP.NET 2.0 and ADO.NET 2.0,” which provides some historical and contextual background to the work done here. The following from this 2008 article asserts the main motivation for this “common” database approach:
Writing generic data access code is especially important in data-driven Web applications because data comes from many different sources, including Microsoft SQL Server, Oracle, XML documents, flat files, and Web services, just to name a few.
What was not mentioned above is SQLite which emerges through the mists of time as the primary focus of this Studio. It follows that the Microsoft.Data.Sqlite
NuGet package is installed and supported here. This package was chosen over the original SQLite package, System.Data.SQLite
, for reasons described in “Comparison to System.Data.SQLite.”
the Microsoft.Data.Sqlite.SqliteFactory
The Microsoft.Data.Sqlite.SqliteFactory
[📖 docs] is considered here the premiere DbProviderFactory
[📖 docs] of this Studio. The CommonDbmsUtility.RegisterMicrosoftSqlite()
method registers the SQLite provider with the current app domain. We can see this provider in action throughout the automated tests in the Songhay.DataAccess.Tests
project that accompany this library. These tests depend on the Songhay.Northwind.DataAccess
project, featuring a SQLite database file, northwind.db
.
the Common*
utilities
This Solution features the Common*
utilities of reusable routines around:
System.Data.IDbConnection
[📖 docs]System.Data.Common.DbParameter
[📖 docs]System.Data.IDataReader
[📖 docs]
The interfaces IDbConnection
and IDataReader
are implemented in .NET as System.Data.Common.DbConnection
[docs] and System.Data.Common.DbDataReader
[📖 docs], respectively.
With respect to the list above, these Common*
utilities are:
- the
CommonDbmsUtility
class and theCommonScalarUtility
class - the
CommonParameterUtility
class - the
CommonReaderUtility
class
the Extensions
The extension method classes of this Solution, feature routines around IDbDataReader
for XObject
and JObject
.
related links
- ADO.NET [📖 docs]
- DbProviderFactories
- “Obtaining a DbProviderFactory”
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. 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. |
-
net6.0
- Microsoft.Data.Sqlite (>= 6.0.33)
- Microsoft.EntityFrameworkCore.Sqlite (>= 6.0.32)
- SonghayCore (>= 6.1.4)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.