# Tiny Helpers for Entity Framework Core
[![Lint Code Base](https://github.com/marcominerva/TinyHelpers/actions/workflows/linter.yml/badge.svg)](https://github.com/marcominerva/TinyHelpers/actions/workflows/linter.yml)
[![CodeQL](https://github.com/marcominerva/TinyHelpers/actions/workflows/codeql.yml/badge.svg)](https://github.com/marcominerva/TinyHelpers/actions/workflows/codeql.yml)
[![NuGet](https://img.shields.io/nuget/v/TinyHelpers.EntityFrameworkCore.svg?style=flat-square)](https://www.nuget.org/packages/TinyHelpers.EntityFrameworkCore)
[![Nuget](https://img.shields.io/nuget/dt/TinyHelpers.EntityFrameworkCore)](https://www.nuget.org/packages/TinyHelpers.EntityFrameworkCore)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/marcominerva/TinyHelpers/blob/master/LICENSE)
A collection of helper methods and classes for Entity Framework Core that I use every day. I have packed them in a single library to avoid code duplication.
**Installation**
The library is available on [NuGet](https://www.nuget.org/packages/TinyHelpers.EntityFrameworkCore). Just search for *TinyHelpers.EntityFrameworkCore* in the **Package Manager GUI** or run the following command in the **.NET CLI**:
dotnet add package TinyHelpers.EntityFrameworkCore
**Usage**
The library provides some [Value Converters](https://docs.microsoft.com/ef/core/modeling/value-conversions) to handle data types that are not natively supported by Entity Framework Core. They can be explicitly used calling the [HasConversion](https://docs.microsoft.com/dotnet/api/microsoft.entityframeworkcore.metadata.builders.propertybuilder.hasconversion) method, or automatically via some extension methods:
// using TinyHelpers.EntityFrameworkCore.Extensions;
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Post>(builder =>
{
// Date is a DateOnly property (.NET 6 or higher).
builder.Property(x => x.Date).HasDateOnlyConversion();
// Time is a TimeOnly property (.NET 6 or higher).
builder.Property(x => x.Time).HasTimeOnlyConversion();
// Comments is a complex type, this Converter will automatically JSON-de/serialize it
// in a string column.
builder.Property(x => x.Comments).HasJsonConversion();
});
}
**Contribute**
The project is constantly evolving. Contributions are welcome. Feel free to file issues and pull requests on the repo and we'll address them as we can.
没有合适的资源?快使用搜索试试~ 我知道了~
我每天使用的.NET辅助方法和类的集合 我将它们打包在一个库中以避免代码重复 -C#-下载
共90个文件
cs:60个
csproj:8个
yml:6个
需积分: 1 0 下载量 13 浏览量
2023-01-10
19:32:03
上传
评论
收藏 86KB ZIP 举报
温馨提示
我每天使用的.NET辅助方法和类的集合 我将它们打包在一个库中以避免代码重复 -C#-下载
资源推荐
资源详情
资源评论
收起资源包目录
我每天使用的.NET辅助方法和类的集合。我将它们打包在一个库中以避免代码重复。.zip (90个子文件)
TinyHelpers-master
.editorconfig 13KB
.github
workflows
publish.yml 1KB
publish_ef.yml 1KB
linter.yml 1KB
publish_dapper.yml 1KB
codeql.yml 3KB
publish_aspnetcore.yml 1KB
src
TinyHelpers.Dapper
JsonOptions.cs 470B
TinyHelpers.Dapper.csproj 2KB
TypeHandlers
StringEnumerableTypeHandler.cs 862B
DateOnlyTypeHandler.cs 584B
StringArrayTypeHandler.cs 814B
JsonTypeHandler.cs 1KB
TimeOnlyTypeHandler.cs 576B
version.json 306B
README.md 2KB
Directory.Build.props 571B
TinyHelpers.AspNetCore
TypeConverters
TimeOnlyTypeConverter.cs 1KB
DateOnlyTypeConverter.cs 1KB
TinyHelpers.AspNetCore.csproj 2KB
version.json 340B
DataAnnotations
RoleAuthorizeAttribute.cs 267B
FileSizeAttribute.cs 1KB
AllowedExtensionsAttribute.cs 1KB
ContentTypeAttribute.cs 2KB
Extensions
ClaimExtensions.cs 4KB
ServiceCollectionExtensions.cs 2KB
HostBuilderExtensions.cs 1KB
README.md 1KB
Swagger
DefaultResponseOperationFilter.cs 361B
SwaggerExtensions.cs 3KB
AcceptLanguageHeaderOperationFilter.cs 1KB
ProblemDetailsDocumentFilter.cs 399B
Middlewares
EnableRequestRewindMiddleware.cs 418B
ApplicationBuilderExtensions.cs 288B
TinyHelpers
TinyHelpers.csproj 2KB
Threading
AsyncLock.cs 459B
version.json 318B
Extensions
EnumExtensions.cs 3KB
StringExtensions.cs 4KB
StopwatchExtensions.cs 724B
TaskExtensions.cs 3KB
DateTimeExtensions.cs 2KB
CollectionExtensions.cs 13KB
NullableAttributes.cs 8KB
Json
Serialization
TimeSpanTicksConverter.cs 488B
ShortDateConverter.cs 898B
StringEnumMemberConverter.cs 11KB
UtcDateTimeConverter.cs 875B
StringTrimmingConverter.cs 475B
Models
WithIndex.cs 927B
Http
HeaderInjectorHttpClientHandler.cs 1KB
QueryStringInjectorHttpClientHandler.cs 2KB
AuthenticatedParameterizedHttpClientHandler.cs 3KB
TinyHelpers.EntityFrameworkCore
Comparers
JsonStringComparer.cs 560B
StringArrayComparer.cs 398B
TimeOnlyComparer.cs 292B
DateOnlyComparer.cs 300B
JsonOptions.cs 483B
TinyHelpers.EntityFrameworkCore.csproj 2KB
version.json 306B
Converters
TimeOnlyConverter.cs 347B
StringEmptyToNullConverter.cs 357B
JsonStringConverter.cs 528B
StringArrayConverter.cs 729B
DateOnlyConverter.cs 364B
StringEmptyToNullTrimConverter.cs 372B
Extensions
PropertyBuilderExtensions.cs 2KB
DbContextExtensions.cs 692B
README.md 3KB
LICENSE 1KB
samples
TinyHelpers.Sample
Program.cs 1KB
TinyHelpers.Sample.csproj 429B
Benchmarks.cs 2KB
TinyHelpers.Dapper.Sample
Database
Posts.sql 473B
Program.cs 1KB
TinyHelpers.Dapper.Sample.csproj 392B
Models
Post.cs 512B
TinyHelpers.EntityFrameworkCore.Sample
DataContext.cs 1KB
Database
Posts.sql 311B
Program.cs 1KB
TinyHelpers.EntityFrameworkCore.Sample.csproj 461B
Entities
Post.cs 560B
tests
TinyHelpers.Tests
Usings.cs 19B
Extensions
StringExtensionsTests.cs 1KB
TinyHelpers.Tests.csproj 1KB
Toolbox.png 12KB
TinyHelpers.sln 6KB
.gitignore 6KB
README.md 1KB
共 90 条
- 1
资源评论
m0_57781768
- 粉丝: 1w+
- 资源: 402
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功