MessagePack.FSharpExtensions 4.0.0
.NET 6.0 此包针对 .NET 6.0。此包与此框架兼容或更高版本。 .NET Core 3.1 此包针对 .NET Core 3.1。此包与此框架兼容或更高版本。 .NET Standard 2.0 此包针对 .NET Standard 2.0。此包与此框架兼容或更高版本。
dotnet add package MessagePack.FSharpExtensions --version 4.0.0
NuGet\Install-Package MessagePack.FSharpExtensions -Version 4.0.0
此命令 intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MessagePack.FSharpExtensions" Version="4.0.0" />
对于支持 PackageReference 的项目,将此 XML 节点复制到项目文件中以引用该包。
paket add MessagePack.FSharpExtensions --version 4.0.0
NuGet 团队不提供对此客户端的支持。请联系其 维护者 以获得支持。
#r "nuget: MessagePack.FSharpExtensions, 4.0.0"
#r 指令可用于F# Interactive和Polyglot Notebooks。将该代码复制到交互式工具或脚本源代码中,以引用该包。
// Install MessagePack.FSharpExtensions as a Cake Addin #addin nuget:?package=MessagePack.FSharpExtensions&version=4.0.0 // Install MessagePack.FSharpExtensions as a Cake Tool #tool nuget:?package=MessagePack.FSharpExtensions&version=4.0.0
NuGet 团队不提供对此客户端的支持。请联系其 维护者 以获得支持。
MessagePack.FSharpExtensions
MessagePack.FSharpExtensions 是 F# 的 MessagePack-CSharp 扩展库。
用法
open System
open System.Buffers
open MessagePack
open MessagePack.Resolvers
open MessagePack.FSharp
[<MessagePackObject>]
type UnionSample =
| Foo of XYZ : int
| Bar of OPQ : string list
let convertAsMemory<'T> options (value: 'T) =
let memory = ReadOnlyMemory(MessagePackSerializer.Serialize(value, options))
MessagePackSerializer.Deserialize<'T>(memory, options)
let convertAsSequence<'T> options (value: 'T) =
let sequence = ReadOnlySequence(MessagePackSerializer.Serialize(value, options))
MessagePackSerializer.Deserialize<'T>(& sequence, options)
let dump = function
| Foo x ->
printfn "%d" x
| Bar xs ->
printfn "%A" xs
let resolver =
Resolvers.CompositeResolver.Create(
FSharpResolver.Instance,
StandardResolver.Instance
)
let options = MessagePackSerializerOptions.Standard.WithResolver(resolver)
Foo 999
|> convertAsMemory options
|> dump
Bar ["example"]
|> convertAsSequence options
|> dump
支持的类型
- option
- voption
- list
- map
- set
- Discriminated Union
- Struct Discriminated Union
Records, Struct Records 和 Anonymous Records 使用 DynamicObjectResolver
在 MessagePack-CSharp
中进行序列化和反序列化。
产品 | 版本 兼容和额外的计算目标框架版本。 |
---|---|
.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 | netcoreapp2.0 已计算。 netcoreapp2.1 已计算。 netcoreapp2.2 已计算。 netcoreapp3.1 兼容。 |
.NET Standard | netstandard2.0 兼容。 netstandard2.1 已计算。 |
.NET Framework | net461 已计算。 net462 已计算。 net463 已计算。 net47 已计算。 net471 已计算。 net472 已计算。 net48 已计算。 net481 已计算。 |
MonoAndroid | monoandroid 已计算。 |
MonoMac | monomac 已计算。 |
MonoTouch | monotouch 已计算。 |
Tizen | tizen40 已计算。 tizen60 已计算。 |
Xamarin.iOS | xamarinios 已计算。 |
Xamarin.Mac | xamarinmac 已计算。 |
Xamarin.TVOS | xamarintvos 已计算。 |
Xamarin.WatchOS | xamarinwatchos 已计算。 |
-
.NETCoreApp 3.1
- FSharp.Core (>= 7.0.200)
- MessagePack (>= 2.4.59)
-
.NETStandard 2.0
- FSharp.Core (>= 7.0.200)
- MessagePack (>= 2.4.59)
-
net6.0
- FSharp.Core (>= 7.0.200)
- MessagePack (>= 2.4.59)
NuGet 包 (4)
显示依赖 MessagePack.FSharpExtensions 的前 4 个 NuGet 包
包 | 下载 |
---|---|
NBomber.Contracts
NBomber 的公共合约 |
|
FSharpApiSearch
F# API 搜索引擎 |
|
Fun.Blazor.HotReload
包描述 |
|
Fun.SunUI.HotReload
包描述 |
GitHub 仓库
此包未用于任何流行的 GitHub 仓库。