Nzr.Orm.Core
0.1.0
See the version list below for details.
dotnet add package Nzr.Orm.Core --version 0.1.0
NuGet\Install-Package Nzr.Orm.Core -Version 0.1.0
<PackageReference Include="Nzr.Orm.Core" Version="0.1.0" />
paket add Nzr.Orm.Core --version 0.1.0
#r "nuget: Nzr.Orm.Core, 0.1.0"
// Install Nzr.Orm.Core as a Cake Addin #addin nuget:?package=Nzr.Orm.Core&version=0.1.0 // Install Nzr.Orm.Core as a Cake Tool #tool nuget:?package=Nzr.Orm.Core&version=0.1.0
Nzr.Orm
Fast, simple, convention-based (but configurable) and extensible Micro-Orm
Key features:
Nzr.Orm is a NuGet library that you can add in to your project providing the following features.
- CRUD Operations based on object properties: Insert, Select, Update and Delete
- Aggregate Functions based on object properties: Max, Min, Count, Sum, Avg
- Attributes to overridade table name and colum names. If not provided, the elements will be mapped as lower_case names.
- Support to schema: global for the DAO instance or defined for each table using attributes.
- Support to convert strings to dynamic XML or JSON objects, allowing
Characteristics = "<characteristic><brand>NZR</brand></characteristic>" product.Characteristics.characteristic.brand.ToString()
How to use
More examples about how to use it cab be found at github.
INSERT
Category category = new Category()
{
Id = 1,
Description = "Sports",
CreatedAt = DateTime.Now
};
using (Dao dao = new Dao(connectionStrings))
{
int result = dao.Insert(category);
}
SELECT
using (Dao dao = new Dao(connectionStrings))
{
Category category = dao.Select<Category>(1);
}
using (Dao dao = new Dao(connectionStrings))
{
Category category = dao.Select<Category>(new Where { { "Description", Where.EQ, "Sports" } });
}
UPDATE
Category category = new Category()
{
Id = 1,
Description = "e-Sports",
CreatedAt = DateTime.Now
};
using (Dao dao = new Dao(connectionStrings))
{
int result = dao.Update(category);
}
using (Dao dao = new Dao(connectionStrings))
{
int result = dao.Update<Category>(new Set { { "Description", "Sports" } }, new Where { { "Description", Where.EQ, "e-Sports" } });
}
DELETE
using (Dao dao = new Dao(connectionStrings))
{
int result = dao.Delete(category);
}
using (Dao dao = new Dao(connectionStrings))
{
int result = dao.Delete<Category>(new Where { { "Description", Where.NE, "Sports" } });
}
AGGREGATE
using (Dao dao = new Dao(connectionStrings))
{
int result = dao.Aggregate<Product, double>(new Aggregate(Aggregate.COUNT, "Id"));
}
Changeset
NOTE: Please wait until version v.1.x.x is released to use this project in production.
All notable changes to this project will be documented in this file.
v.0.1.0
Added support to following operations:
- int Insert(object entity)
- T Select<T>(int id)
- T Select<T>(Guid id)
- T Select<T>(object[] ids)
- IList<T> Select<T>(Where where)
- int Update(object entity)
- int Update<T>(Set set, Where where)
- int Delete(object entity)
- int Delete<T>(Where where)
- U Aggregate<T,U>(Aggregate aggregate, Where where)
Upcoming features!
v.0.2.0
Add support to transactions.
v.0.3.0
Multi Mapping and Foreing Keys
v.0.4.0
Add support to raw sql.
Product | Versions 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. 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. |
.NET Core | netcoreapp2.2 is compatible. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
-
.NETCoreApp 2.2
- Newtonsoft.Json (>= 12.0.2)
- System.Configuration.ConfigurationManager (>= 4.5.0)
- System.Data.SqlClient (>= 4.6.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
# Nzr.Orm
Fast, simple, convention-based (but configurable) and extensible Micro-Orm.
NOTE: Please wait until v.1.x.x to use this project in a production.
## Changeset
All notable changes to this project will be documented in this file
###### v.0.1.0
Added support to following operations:
* int Insert(object entity)
* T Select<T>(int id)
* T Select<T>(Guid id)
* T Select<T>(object[] ids)
* IList<T> Select<T>(Where where)
* int Update(object entity)
* int Update<T>(Set set, Where where)
* int Delete(object entity)
* int Delete<T>(Where where)
* U DoAggregate<T,U>(Aggregate aggregate, Where where)