Norm.net 2.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Norm.net --version 2.0.0                
NuGet\Install-Package Norm.net -Version 2.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="Norm.net" Version="2.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Norm.net --version 2.0.0                
#r "nuget: Norm.net, 2.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 Norm.net as a Cake Addin
#addin nuget:?package=Norm.net&version=2.0.0

// Install Norm.net as a Cake Tool
#tool nuget:?package=Norm.net&version=2.0.0                

Norm micro orm

The fastest database mapper for .NET Standard 2.1

the website with tutorial currently under construction

Performances

See detailed perfomance benchmarks compared to Dapper at performance tests page.

Testing

250 tests for SqlServer, PostgreSQL, SQLite and MySql

tests

Local testing

  • Under each test project there is a testsettings.json.
  • Copy this file and rename it to testsettings.local.json. It will be ignored by git.
  • Set the key Default to the value of your actual, local connection string.
  • The key TestDatabase contains the name of the test database, which is created and dropped on each testing session, so be careful about that.
  • Run dotnet test

Usage

Get it on Nuget

> dotnet add package Norm.net

Use in project

using Norm;

// Start using database connection extensions. Some examples:

// Map results to record:
public record MyRecord(int Id, string Foo, string Bar);
// ...
var records = connection.Query<MyRecord>("select id, foo, bar from my_table");

// Map results to class:
public class MyClass { public int Id { get; init; } public string Foo { get; init; } public string Bar { get; init; } };
// ...
var records = connection.Query<MyClass>("select id, foo, bar from my_table");

// Map single values from tuple to variables:
var (id, foo, bar) = connection.Single<int, string, string>("select id, foor, bar from my_table limit 1");

// Map to enumerable of named tuples:
IEnumerable<(int id, string foo, string bar)> results = connection.Read<int, string, string>("select id, foor, bar from my_table");

// Asynchronously stream values directly from database
await foreach(var (id, foo, bar) in connection.ReadAsync<int, string, string>("select id, foor, bar from my_table"))
{
    //...
}

// etc...

Currently supported platforms

  • .NET Standard 2.1

Support

This is open-source software developed and maintained freely without any compensation whatsoever.

If you find it useful please consider rewarding me on my effort by buying me a beer🍻 or buying me a pizza🍕

Or if you prefer bitcoin: bitcoincash:qp93skpzyxtvw3l3lqqy7egwv8zrszn3wcfygeg0mv

Licence

Copyright (c) Vedran Bilopavlović - VB Consulting and VB Software 2020 This source code is licensed under the MIT license.

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.
  • .NETStandard 2.1

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on Norm.net:

Repository Stars
DapperLib/Dapper
Dapper - a simple object mapper for .Net
vb-consulting/Norm.net
Norm.net is an innovative and high-performance Database Access for .NET Standard 2.1 and higher
Version Downloads Last updated
5.4.0 4,882 11/28/2023
5.3.9 1,400 10/7/2023
5.3.8 689 9/7/2023
5.3.7 2,453 7/17/2023
5.3.6 329 7/2/2023
5.3.5 208 7/1/2023
5.3.4 740 5/26/2023
5.3.3 1,345 5/16/2023
5.3.2 25,738 5/3/2023
5.3.1 12,949 11/18/2022
5.3.0 2,807 10/17/2022
5.2.5 459 10/6/2022
5.2.4 427 10/4/2022
5.2.3 4,879 7/8/2022
5.2.2 504 7/5/2022
5.2.1 475 6/26/2022
5.2.0 455 6/25/2022
5.1.0 448 6/20/2022
5.0.1 453 6/16/2022
5.0.0 2,897 5/31/2022
4.3.0 484 5/7/2022
4.2.0 2,404 4/7/2022
4.1.0 21,514 2/23/2022
4.0.0 476 2/15/2022
3.3.13 623 1/25/2022
3.3.12 482 1/25/2022
3.3.11 471 1/21/2022
3.3.10 475 1/20/2022
3.3.9 494 1/11/2022
3.3.8 462 1/11/2022
3.3.7 2,295 12/11/2021
3.3.6 327 12/9/2021
3.3.5 8,484 10/18/2021
3.3.4 1,835 9/15/2021
3.3.3 359 9/4/2021
3.3.2 364 9/4/2021
3.3.1 2,658 7/25/2021
3.3.0 2,983 6/7/2021
3.2.0 11,066 3/30/2021
3.1.2 4,259 1/10/2021
3.1.1 420 1/8/2021
3.1.0 708 12/23/2020
3.0.0 377 12/21/2020
2.0.7 421 12/19/2020
2.0.6 485 12/13/2020
2.0.5 432 12/12/2020
2.0.4 445 12/12/2020
2.0.3 445 12/12/2020
2.0.2 370 12/11/2020
2.0.1 377 12/11/2020
2.0.0 420 12/9/2020
1.7.0 3,557 11/26/2020
1.6.0 813 11/23/2020
1.5.2 4,253 5/30/2020
1.5.1 465 5/13/2020
1.5.0 676 3/17/2020
1.4.0 467 3/6/2020
1.3.0 525 3/4/2020
1.2.0 635 1/29/2020
1.1.9 486 1/28/2020
1.1.8 501 1/28/2020
1.1.7 523 12/6/2019
1.1.6 492 12/1/2019
1.1.5 515 10/26/2019
1.1.4 480 10/26/2019
1.1.3 504 10/23/2019
1.1.2 502 10/7/2019
1.1.1 486 10/7/2019
1.1.0 494 10/5/2019
1.0.2 556 10/2/2019