MessagePack.FSharpExtensions 4.0.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                
#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                

MessagePack.FSharpExtensions

NuGet Status

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 使用 DynamicObjectResolverMessagePack-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 已计算。
兼容目标框架
包含的目标框架(在包中)
了解有关 目标框架.NET Standard 的更多信息。

NuGet 包 (4)

显示依赖 MessagePack.FSharpExtensions 的前 4 个 NuGet 包

下载
NBomber.Contracts

NBomber 的公共合约

FSharpApiSearch

F# API 搜索引擎

Fun.Blazor.HotReload

包描述

Fun.SunUI.HotReload

包描述

GitHub 仓库

此包未用于任何流行的 GitHub 仓库。

版本 下载 最后更新
4.0.0 50,788 2/19/2023
3.0.0 1,003,689 9/25/2021
2.1.0 16,245 5/21/2020
2.0.0 480 5/20/2020
1.4.1 71,750 1/8/2019
1.4.0 11,184 10/9/2017
1.3.0 902 10/7/2017
1.2.0 2,458 7/5/2017
1.1.0 1,088 5/20/2017
1.0.0 959 3/30/2017
0.1.0 1,046 3/17/2017