双向映射 1.0.0
dotnet add package BidirectionalMap --version 1.0.0
NuGet\Install-Package BidirectionalMap -Version 1.0.0
此命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用 NuGet 模块的 Install-Package 版本。
<PackageReference Include="BidirectionalMap" Version="1.0.0" />
对于支持 PackageReference 的项目,请将此 XML 节点复制到项目文件以引用该软件包。
paket add BidirectionalMap --version 1.0.0
NuGet 团队不提供对此客户端的支持。请联系其 维护者 以获取支持。
#r "nuget: BidirectionalMap, 1.0.0"
#r 指令可用于 F# Interactive 和 Polyglot Notebooks。将其复制到交互式工具或脚本的源代码中以引用软件包。
// Install BidirectionalMap as a Cake Addin #addin nuget:?package=BidirectionalMap&version=1.0.0 // Install BidirectionalMap as a Cake Tool #tool nuget:?package=BidirectionalMap&version=1.0.0
NuGet 团队不提供对此客户端的支持。请联系其 维护者 以获取支持。
双向映射
正如其名。此库提供了一个 Single class BiMap
,允许您使用与定义单向映射的字典类似的方式定义值之间的双向一对一映射。
示例
using BidirectionalMap;
BiMap<int, string> map = new BiMap<int, string>(){
{1, "Circle"},
{2, "Triangle"},
{3, "Square"},
};
var mappedString = map.Forward[1]; //"Circle"
var mappedInt = map.Reverse["Circle"]; // 1
它不仅限于值类型
BiMap<int, Action> map = new BiMap<int, string>(){
{1, () => /* do something*/},
};
var action = map.Forward[1];
为什么?
表格驱动值映射是一种非常有力的技术,它使转换更易于阅读,更易于更新,并更容易从非代码源中进行加载。
此类技术的常见场景包括
- 映射到某些存储类型(例如,枚举和字符串之间的转换)
- 在请求数据和显示值之间进行映射
- 包装其他代码(适配器样式)以按自己的术语使用 API
- 根据某种类型值选择操作或配置(这通常是单向的)
安装
将作为 nuget 软件包提供... 待上传
反馈/错误/贡献
请随时创建一个问题来开始对话。
产品 | 版本 兼容的和附加的计算目标框架版本。 |
---|---|
.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 核心库 | netcoreapp1.0 已计算。 netcoreapp1.1 已计算。 netcoreapp2.0 已计算。 netcoreapp2.1 已计算。 netcoreapp2.2 已计算。 netcoreapp3.0 已计算。 netcoreapp3.1 已计算。 |
.NET 标准 | netstandard1.6 兼容。 netstandard2.0 已计算。 netstandard2.1 已计算。 |
.NET 框架 | net461 已计算。 net462 已计算。 net463 已计算。 net47 已计算。 net471 已计算。 net472 已计算。 net48 已计算。 net481 已计算。 |
MonoAndroid | monoandroid 已计算。 |
MonoMac | monomac 已计算。 |
MonoTouch | monotouch 已计算。 |
Tizen | tizen30 已计算。 tizen40 已计算。 tizen60 已计算。 |
Xamarin.iOS | xamarinios 已计算。 |
Xamarin.Mac | xamarinmac 已计算。 |
Xamarin.TVOS | xamarintvos 已计算。 |
Xamarin.WatchOS | xamarinwatchos 已计算。 |
-
.NETStandard 1.6
- NETStandard.Library (>= 1.6.1)
NuGet 包 (1)
显示对 BidirectionalMap 依赖的前 1 个 NuGet 包
包 | 下载 |
---|---|
Crash.Plugins
用于创建崩溃插件的原生开发套件 |
GitHub 仓库
此包未被任何著名的 GitHub 仓库使用。
版本 | 下载 | 最后更新 |
---|---|---|
1.0.0 | 87,441 | 4/24/2020 |