Boxed.Mapping 7.0.0
前缀已保留
此软件包具有 SemVer 2.0.0 软件包版本号:7.0.0+build.1058。
dotnet add package Boxed.Mapping --version 7.0.0
NuGet\Install-Package Boxed.Mapping -Version 7.0.0
此命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用 NuGet 模块的版本 Install-Package.
<PackageReference Include="Boxed.Mapping" Version="7.0.0" />
对于支持 PackageReference 的项目,请将此 XML 节复制到项目文件中以引用软件包。
paket add Boxed.Mapping --version 7.0.0
NuGet 团队不提供对此客户端的支持。请联系其 维护者 以获取支持。
#r "nuget: Boxed.Mapping, 7.0.0"
#r 指令可用于 F# Interactive 和 Polyglot Notebooks。将其复制到交互式工具或脚本的源代码中以引用软件包。
// Install Boxed.Mapping as a Cake Addin #addin nuget:?package=Boxed.Mapping&version=7.0.0 // Install Boxed.Mapping as a Cake Tool #tool nuget:?package=Boxed.Mapping&version=7.0.0
NuGet 团队不提供对此客户端的支持。请联系其 维护者 以获取支持。
Boxed.Mapping
一个简单快速(最快?)的对象到对象映射器,不使用反射。请参阅 一个简单快速的对象映射器 了解更多信息。
public class MapFrom
{
public bool BooleanFrom { get; set; }
public int IntegerFrom { get; set; }
public List<MapFromChild> ChildrenFrom { get; set; }
}
public class MapFromChild
{
public DateTimeOffset DateTimeOffsetFrom { get; set; }
public string StringFrom { get; set; }
}
public class MapTo
{
public bool BooleanTo { get; set; }
public int IntegerTo { get; set; }
public List<MapToChild> ChildrenTo { get; set; }
}
public class MapToChild
{
public DateTimeOffset DateTimeOffsetTo { get; set; }
public string StringTo { get; set; }
}
public class DemoMapper : IMapper<MapFrom, MapTo>
{
private readonly IMapper<MapFromChild, MapToChild> childMapper;
public DemoMapper(IMapper<MapFromChild, MapToChild> childMapper) => this.childMapper = childMapper;
public void Map(MapFrom source, MapTo destination)
{
destination.BooleanTo = source.BooleanFrom;
destination.IntegerTo = source.IntegerFrom;
destination.ChildrenTo = childMapper.MapList(source.ChildrenFrom);
}
}
public class DemoChildMapper : IMapper<MapFromChild, MapToChild>
{
public void Map(MapFromChild source, MapToChild destination)
{
destination.DateTimeOffsetTo = source.DateTimeOffsetFrom;
destination.StringTo = source.StringFrom;
}
}
public class UsageExample
{
private readonly IMapper<MapFrom, MapTo> mapper = new DemoMapper();
public MapTo MapOneObject(MapFrom source) => this.mapper.Map(source);
public MapTo[] MapArray(List<MapFrom> source) => this.mapper.MapArray(source);
public List<MapTo> MapList(List<MapFrom> source) => this.mapper.MapList(source);
public IAsyncEnumerable<MapTo> MapAsyncEnumerable(IAsyncEnumerable<MapFrom> source) =>
this.mapper.MapEnumerableAsync(source);
}
还包括 IImmutableMapper<TSource, TDestination>
,用于映射到不可变类型,如 C# 9 的 record
,也可以用于 enum
类型。
public record MapFrom(bool BooleanFrom, int IntegerFrom);
public record MapTo(bool BooleanTo, int IntegerTo);
public class DemoImmutableMapper : IImmutableMapper<MapFrom, MapTo>
{
public MapTo Map(MapFrom source) =>
new MapTo(source.BooleanFrom, source.IntegerFrom);
}
产品 | 版本 兼容和额外的计算目标框架版本。 |
---|---|
.NET | net5.0 已计算。 net5.0-windows 已计算。 net6.0 兼容。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 兼容。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 已计算。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。 |
.NET Core | netcoreapp1.0 已计算。 netcoreapp1.1 已计算。 netcoreapp2.0 已计算。 netcoreapp2.1 已计算。 netcoreapp2.2 已计算。 netcoreapp3.0 已计算。 netcoreapp3.1 已计算。 |
.NET Standard | netstandard1.3 相容。 netstandard1.4 已计算。 netstandard1.5 已计算。 netstandard1.6 已计算。 netstandard2.0 相容。 netstandard2.1 相容。 |
.NET 框架 | net46 已计算。 net461 已计算。 net462 已计算。 net463 已计算。 net47 已计算。 net471 已计算。 net472 已计算。 net48 已计算。 net481 已计算。 |
MonoAndroid | monoandroid 已计算。 |
MonoMac | monomac 已计算。 |
MonoTouch | monotouch 已计算。 |
Tizen | tizen30 已计算。 tizen40 已计算。 tizen60 已计算。 |
通用 Windows 平台 | uap 已计算。 uap10.0 已计算。 |
Xamarin.iOS | xamarinios 已计算。 |
Xamarin.Mac | xamarinmac 已计算。 |
Xamarin.TVOS | xamarintvos 已计算。 |
Xamarin.WatchOS | xamarinwatchos 已计算。 |
-
.NETStandard 1.3
- NETStandard.Library (≥ 1.6.1)
-
.NETStandard 2.0
- 无依赖。
-
.NETStandard 2.1
- 无依赖。
-
net6.0
- 无依赖。
-
net7.0
- 无依赖。
NuGet 包 (5)
显示依赖于 Boxed.Mapping 的前 5 个 NuGet 包
包 | 下载 |
---|---|
WebScheduler.Client.Core WebScheduler 服务器的基本客户端库。 |
|
Uponey.Core.Contract
包描述 |
|
PikTools.Modules.Pylons.Shared
PikTools为模块Pylons核心库 |
|
Kasp.ObjectMapper.Benchmark
包描述 |
|
idee5.EventStoreLite
基本事件存储实现 |
GitHub仓库 (1)
显示依赖Boxed.GetMapping的顶级1个流行的GitHub仓库
仓库 | 星标 |
---|---|
Dotnet-Boxed/Templates
包含电池组的.NET项目模板,提供启动所需的最少代码量,以更快地开始。
|
版本 | 下载 | 最后更新 |
---|---|---|
7.0.0 | 25,729 | 9/14/2023 |
6.0.0 | 187,659 | 11/9/2021 |
5.3.0 | 88,449 | 3/11/2021 |
5.2.0 | 26,453 | 12/3/2020 |
5.1.0 | 4,044 | 11/23/2020 |
5.0.0 | 32,954 | 7/20/2020 |
4.0.0 | 60,224 | 3/17/2020 |
3.0.0 | 23,622 | 11/30/2019 |
2.0.0 | 7,965 | 9/13/2019 |
1.4.0 | 11,762 | 7/14/2019 |
1.3.0 | 29,210 | 12/27/2018 |
1.2.0 | 35,585 | 7/13/2018 |
1.1.0 | 2,508 | 5/25/2018 |
1.0.0 | 2,781 | 5/6/2018 |