Nino.Generator 2.0.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package Nino.Generator --version 2.0.1                
NuGet\Install-Package Nino.Generator -Version 2.0.1                
This command is 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="Nino.Generator" Version="2.0.1">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Nino.Generator --version 2.0.1                
#r "nuget: Nino.Generator, 2.0.1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Nino.Generator as a Cake Addin
#addin nuget:?package=Nino.Generator&version=2.0.1

// Install Nino.Generator as a Cake Tool
#tool nuget:?package=Nino.Generator&version=2.0.1                

Nino

Definite useful and high performance serialisation library for C# projects, especially for Unity.

实用的高性能C#序列化库,尤其在Unity平台能带来令人难以置信的效益。

buildlicense

功能列表

使用教程 nino.nuget

Protobuf-net/MsgPack/BinaryFormatter/Bson/JSON等序列化库的平替方案,优势是更小体积,更高性能,支持多线程,支持多态

注意,该模块的序列化数据,仅支持在C#平台使用该库进行序列化和反序列化,无法跨语言使用

Nino.Serialization v2.0.0与所有1.x版本都不兼容,详细请查看使用教程

  • 支持全部非托管类型(int/float/datetime/vector/etc)

  • 支持任意Nullable类型

  • 支持任意ICollection类型(list/dictonary/hashset/etc)

  • 支持任意Span类型

  • 支持自定义Nino序列化类型

  • 支持嵌套上述类型(dictionary<int, list<自定义nino类型[]>>)

  • 支持多态

  • 支持数据校验

  • 性能高,GC低!

  • 测试案例

    • Test1 Nino VS Protobuf-net 序列化

    • Test2 Nino VS BinaryFormatter 序列化

    • Test3 Nino VS Protobuf-net 反序列化

    • Test4 Nino VS BinaryFormatter 反序列化

    • Test5 Nino VS MongoDB.Bson 序列化以及反序列化

    • Test6 Nino VS MsgPack 序列化以及反序列化

    • Test7 自定义Nino序列化反序列化委托

    • Test8 自动收集全部字段进行序列化/反序列化(无需给单个字段或属性打标签)

    • Test9 基础类型序列化反序列化

    • Test10 复杂结构类型序列化反序列化

    • Test11 ILRuntime测试(需要搭配使用教程启用ILRuntime)

    • 真机测试 可以打IL2CPP或Mono包进行测试(对比了Nino Reflection/Code Gen与Protobuf-net/BinaryFormatter/Bson/MsgPack Code Gen的序列化性能、序列化体积、反序列化性能)

      Protobuf-net与Bson在IL2CPP下暂不支持字典序列化

  • 性能报告

目录结构

  • Docs,文档
  • src,Nino源码
  • Nino_Unity,Nino Unity 2021及以上版本的工程,包含源码和测试代码(暂未发布v2.0.0 unity版本)
  • Performance,性能报告

在Unity平台使用

暂未发布Unity版本,预计2024年8月推出

在非Unity平台使用

  • 使用NuGet

    NuGet里搜Nino

    PM> Install-Package Nino -Version 2.0.0.2
    
There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Nino.Generator:

Package Downloads
Nino

High performance and low size binary serialization solution, especially for Unity.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.0.5 76 7/24/2024
2.0.4 91 7/18/2024
2.0.3 59 7/8/2024
2.0.2 68 7/8/2024
2.0.1 89 7/3/2024
2.0.0.2 98 7/2/2024
2.0.0.1 73 7/2/2024
2.0.0 72 7/2/2024
1.0.0 77 7/2/2024

Nino.Serialization v2.0.1
- [Optimisation] More efficient code generated via Source Generator
- [Feature] Polymorphism Solution for Collections Serialization
- [Feature] Support for Unity