SqlSugar.FluentMapping
1.0.3
dotnet add package SqlSugar.FluentMapping --version 1.0.3
NuGet\Install-Package SqlSugar.FluentMapping -Version 1.0.3
<PackageReference Include="SqlSugar.FluentMapping" Version="1.0.3" />
<PackageVersion Include="SqlSugar.FluentMapping" Version="1.0.3" />
<PackageReference Include="SqlSugar.FluentMapping" />
paket add SqlSugar.FluentMapping --version 1.0.3
#r "nuget: SqlSugar.FluentMapping, 1.0.3"
#:package SqlSugar.FluentMapping@1.0.3
#addin nuget:?package=SqlSugar.FluentMapping&version=1.0.3
#tool nuget:?package=SqlSugar.FluentMapping&version=1.0.3
SqlSugar.FluentMapping
This extension add Fluent Mapping feature to SqlSugar ORM.
- SqlSugar ORM: https://github.com/DotNetNext/SqlSugar
- SqlSugar Documentation (CN): https://www.donet5.com/home/doc
- SqlSugar Documentation (EN / Partial): https://github.com/DotNetNext/SqlSugar/wiki
Overview
Supported SDKs
Supported SDKs: .NET Core 6 onwards is supported.
What is SqlSugar.FluentMapping?
SqlSugar.FluentMapping allows you to configure entity mappings using a fluent API, similar to other ORM Fluent API for model configuration like EF, NHibernate, etc.
The main goal is to map entities without using attributes, keeping entity classes clean and separated from mapping concerns.
It follows the SqlSugar conventions and it's easy to use. Please refer to the examples below to get started or check SQLSugar documentation for more details about SqlSugar features.
All contributions and feedback are welcome. Feel free to open issues or submit pull requests.
❤️ With love from Buenos Aires, Argentina ❤️
Installation
You can install the SqlSugar.FluentMapping package via NuGet Package Manager Console or Package Manager UI.
Install-Package SqlSugar.FluentMapping
Usage
Example model class
namespace My.Domain.Entities
{
public class Customer
{
public string Id { get; set; }
public long CUIT { get; set; }
public string BusinessName { get; set; }
public bool IsActive { get; set; }
public CustomerSubscription Subscription { get; set; }
public List<CustomerPrepaidPackHistory> PrepaidPacks { get; set; }
}
}
Step 1 - Create map classes to map entities with Fluent Mapping
public class CustomerMap : EntityMapBuilder<Customer>
{
public override void Configure(EntityMapTypeBuilder<Customer> builder)
{
builder.ToTable("clientes"); // SE EJECUTA A TIEMPO
builder.Property(x => x.Id)
.ColumnName("id")
.IsPrimaryKey()
.IsIdentity();
builder.Property(x => x.BusinessName)
.ColumnName("razon_social");
builder.Property(x => x.IsActive)
.ColumnName("habilitado");
builder.Property(x => x.Subscription)
.Ignore();
builder.Property(x => x.PrepaidPacks)
.Ignore();
}
}
Step 2 - Add map classes & register Fluent Mappings
using SqlSugar;
using SqlSugar.FluentMapping;
// Create SqlSugarClient/Scoped or use your existing one
var db = new SqlSugarClient(new ConnectionConfig()
{
ConnectionString = "your_connection_string",
DbType = DbType.SqlServer,
IsAutoCloseConnection = true,
});
// Register Fluent Mappings to SqlSugar
db.ApplyFluentMapping(new CustomerMap(), new UserMap(), new EmailMap());
License
This extension is under Apache License 2.0. Refer to the LICENSE file for more information.
| 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. 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. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net6.0
- SqlSugarCore (>= 5.1.4.210)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.