DTOMaker.Runtime.CSPoco
0.49.5-dev
See the version list below for details.
dotnet add package DTOMaker.Runtime.CSPoco --version 0.49.5-dev
NuGet\Install-Package DTOMaker.Runtime.CSPoco -Version 0.49.5-dev
<PackageReference Include="DTOMaker.Runtime.CSPoco" Version="0.49.5-dev" />
<PackageVersion Include="DTOMaker.Runtime.CSPoco" Version="0.49.5-dev" />
<PackageReference Include="DTOMaker.Runtime.CSPoco" />
paket add DTOMaker.Runtime.CSPoco --version 0.49.5-dev
#r "nuget: DTOMaker.Runtime.CSPoco, 0.49.5-dev"
#:package DTOMaker.Runtime.CSPoco@0.49.5-dev
#addin nuget:?package=DTOMaker.Runtime.CSPoco&version=0.49.5-dev&prerelease
#tool nuget:?package=DTOMaker.Runtime.CSPoco&version=0.49.5-dev&prerelease
DTOMaker
Types and source generators for building DTOs (Data Transport Objects) and related POCOs (Plain Old C# Objects).
Warning: This is pre-release software under active development. Breaking changes may occur.
DTOMaker.Models
Attributes for defining simple data models as interfaces in C#.
DTOMaker.Models.MemBlocks
Additional attributes used by the DTOMaker.MemBlocks source generator, to manage entity and member memory layout.
DTOMaker.Models.MessagePack
Additional attributes used by the DTOMaker.MessagePack source generator, to manage MessagePack entity and member keys.
DTOMaker.Core
Core types used by source generators at compile-time, including a common syntax receiver, and a powerful template processor.
Features
Features implemented:
- DTOMaker.MessagePack source generator
- DTOMaker.MemBlocks source generator
- DTOMaker.CSPoco source generator
- Member value types: Boolean, S/Byte, U/Int16/32/64/128, Double, Single, Half, Char, Guid, Decimal
- String member types:
- Required or nullable strings for CSPoco and MessagePack
- Non-nullable UTF8-encoded fixed length strings for MemBlocks
- IFreezable support
- Templates as code, template processing
- [Obsolete] members
- Fixed length arrays of above value types.
- polymorphic types
Features not implemented:
- Nullable types. T? can be implemented with a pair of fields (Boolean, T).
- Enum data types. Enums can be implemented with an underlying integer property and a cast.
In progress:
- multi-namespace models
- entity members
Coming soon:
- reservation (hidden members)
- Json (NewtonSoft) generator
- Json (System.Text) generator
- Orleans generator
- ProtobufNet 3.0 generator
- NetStrux generator
- compact layout method
Coming later:
- C# records generator
- Google Protobuf .proto generation
- model.json generation
- command-line alternative
- generic patterns: lists, trees, unions, etc.
- variable length arrays
- logical value equality
These models are consumed by the following source generators to emit DTO classes that implement the model interfaces.
Benchmarks
Some benchmarking comparing the serialization and deserialization performance of various generated DTOs can be found at: todo
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- DataFac.Runtime (>= 0.2.3)
-
net8.0
- DataFac.Runtime (>= 0.2.3)
-
net9.0
- DataFac.Runtime (>= 0.2.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
0.69.3-dev | 16 | 7/19/2025 |
0.69.2-dev | 11 | 7/19/2025 |
0.68.6 | 17 | 7/19/2025 |
0.68.5-dev | 13 | 7/19/2025 |
0.68.2-dev | 114 | 7/17/2025 |
0.68.1-dev | 103 | 7/17/2025 |
0.67.7 | 114 | 7/17/2025 |
0.67.6-dev | 137 | 7/9/2025 |
0.67.5-dev | 131 | 7/9/2025 |
0.67.3-dev | 138 | 7/7/2025 |
0.67.1-dev | 280 | 6/10/2025 |
0.66.18 | 242 | 6/9/2025 |
0.66.17-dev | 208 | 6/9/2025 |
0.66.16-dev | 105 | 6/8/2025 |
0.66.14-dev | 67 | 6/7/2025 |
0.66.13-dev | 133 | 6/5/2025 |
0.66.10-dev | 140 | 6/5/2025 |
0.66.9-dev | 139 | 6/5/2025 |
0.66.8-dev | 143 | 6/5/2025 |
0.66.7-dev | 132 | 6/4/2025 |
0.66.2-dev | 65 | 5/31/2025 |
0.65.20-generics-g24a665d336 | 64 | 5/31/2025 |
0.65.13-generics-ge74b19332f | 156 | 4/23/2025 |
0.65.10-generics-g6f262eb134 | 188 | 4/17/2025 |
0.65.1-generics | 60 | 5/31/2025 |
0.64.27 | 140 | 5/27/2025 |
0.64.26 | 194 | 5/16/2025 |
0.64.24 | 144 | 5/8/2025 |
0.64.22 | 161 | 4/23/2025 |
0.64.20 | 156 | 4/10/2025 |
0.64.18 | 166 | 4/10/2025 |
0.64.17 | 158 | 4/10/2025 |
0.64.16 | 157 | 4/9/2025 |
0.64.10 | 154 | 4/7/2025 |
0.64.9 | 119 | 4/4/2025 |
0.64.8-dev | 148 | 4/1/2025 |
0.64.7-dev-g53a80ba3be | 140 | 4/1/2025 |
0.64.5-dev-g449e36f771 | 468 | 3/25/2025 |
0.64.5-dev-g2fcf9bff64 | 142 | 4/1/2025 |
0.64.4-dev | 140 | 4/1/2025 |
0.64.3-dev | 145 | 3/31/2025 |
0.64.2-dev | 476 | 3/25/2025 |
0.64.1-dev | 469 | 3/25/2025 |
0.63.60-gee4d301e03 | 471 | 3/25/2025 |
0.63.19 | 103 | 3/21/2025 |
0.63.19-g2e909c64aa | 98 | 3/21/2025 |
0.63.17 | 123 | 3/14/2025 |
0.63.16 | 118 | 3/14/2025 |
0.63.15 | 146 | 3/13/2025 |
0.63.13 | 162 | 3/11/2025 |
0.63.12 | 157 | 3/11/2025 |
0.63.11-dev | 158 | 3/11/2025 |
0.63.9-dev | 145 | 3/11/2025 |
0.63.8-dev | 162 | 3/10/2025 |
0.63.7-dev | 158 | 3/10/2025 |
0.63.6-dev | 155 | 3/10/2025 |
0.63.3-dev | 154 | 3/10/2025 |
0.62.10 | 220 | 3/8/2025 |
0.62.9 | 209 | 3/8/2025 |
0.62.7 | 224 | 3/7/2025 |
0.62.6-dev | 197 | 3/7/2025 |
0.62.5-dev | 199 | 3/7/2025 |
0.61.14 | 214 | 3/6/2025 |
0.61.13-dev | 197 | 3/6/2025 |
0.61.12-dev | 212 | 3/6/2025 |
0.61.10-dev | 200 | 3/6/2025 |
0.61.9-dev | 198 | 3/5/2025 |
0.61.8-dev | 208 | 3/5/2025 |
0.61.5-dev | 198 | 3/4/2025 |
0.61.3-dev | 198 | 3/4/2025 |
0.61.2-dev | 136 | 3/3/2025 |
0.60.8 | 120 | 2/27/2025 |
0.60.7 | 100 | 2/27/2025 |
0.60.6-dev | 87 | 2/27/2025 |
0.60.3-dev | 88 | 2/25/2025 |
0.59.10 | 111 | 2/19/2025 |
0.59.8-dev | 108 | 2/19/2025 |
0.59.5-dev | 99 | 2/17/2025 |
0.59.4-dev | 93 | 2/15/2025 |
0.58.9 | 115 | 2/4/2025 |
0.58.8-dev | 89 | 2/4/2025 |
0.57.6 | 111 | 2/1/2025 |
0.57.4 | 103 | 2/1/2025 |
0.57.2-dev | 101 | 2/1/2025 |
0.57.1-dev | 92 | 2/1/2025 |
0.56.13 | 114 | 1/31/2025 |
0.56.12-dev | 93 | 1/31/2025 |
0.56.11-dev | 98 | 1/30/2025 |
0.56.10-dev | 92 | 1/30/2025 |
0.56.9-dev | 94 | 1/30/2025 |
0.56.6-dev | 85 | 1/24/2025 |
0.56.5-dev | 83 | 1/24/2025 |
0.56.4-dev | 86 | 1/24/2025 |
0.56.3-dev | 88 | 1/24/2025 |
0.55.38 | 108 | 1/23/2025 |
0.55.37-dev | 100 | 1/23/2025 |
0.55.36-dev | 93 | 1/22/2025 |
0.55.34-dev | 89 | 1/22/2025 |
0.55.32-dev | 85 | 1/22/2025 |
0.55.31-dev | 92 | 1/21/2025 |
0.55.30-dev | 82 | 1/21/2025 |
0.55.29-dev | 89 | 1/20/2025 |
0.55.27-dev | 78 | 1/20/2025 |
0.55.25-dev | 78 | 1/20/2025 |
0.55.24-dev | 86 | 1/20/2025 |
0.55.23-dev | 79 | 1/19/2025 |
0.55.20-dev | 81 | 1/19/2025 |
0.55.17-dev | 79 | 1/19/2025 |
0.55.14-dev | 79 | 1/19/2025 |
0.54.1 | 117 | 1/3/2025 |
0.53.4 | 120 | 1/1/2025 |
0.53.3 | 120 | 12/31/2024 |
0.53.2-dev | 86 | 12/31/2024 |
0.52.1 | 103 | 12/31/2024 |
0.51.1 | 106 | 12/31/2024 |
0.50.2 | 104 | 12/31/2024 |
0.50.1-dev | 89 | 12/31/2024 |
0.49.7 | 108 | 12/31/2024 |
0.49.6 | 111 | 12/29/2024 |
0.49.5-dev | 96 | 12/29/2024 |
0.49.4-dev | 91 | 12/29/2024 |