TWCore.Collections
3.1.0-beta1
See the version list below for details.
dotnet add package TWCore.Collections --version 3.1.0-beta1
NuGet\Install-Package TWCore.Collections -Version 3.1.0-beta1
<PackageReference Include="TWCore.Collections" Version="3.1.0-beta1" />
paket add TWCore.Collections --version 3.1.0-beta1
#r "nuget: TWCore.Collections, 3.1.0-beta1"
// Install TWCore.Collections as a Cake Addin #addin nuget:?package=TWCore.Collections&version=3.1.0-beta1&prerelease // Install TWCore.Collections as a Cake Tool #tool nuget:?package=TWCore.Collections&version=3.1.0-beta1&prerelease
<img src="https://raw.githubusercontent.com/tonyredondo/TWCore2/master/doc/icon.png" alt="Potato" width="45px" height="45px" /> TWCore 3.1
A multipurpose framework library used to create microservices solutions on multiple platforms (runs on windows, linux, linux-arm [raspberry pi], and osx).
Compatible with
- .NET Framework 4.7.2
- netstandard2.0
- netcoreapp2.1
- netcoreapp2.2
- netcoreapp3.1
- net5.0
- net6.0
- net7.0
- net8.0
Advantages
- Easy development of microservices: With fewer code you can subscribe to a message broker and start to process messages as pub/sub or RPC architecture.
- Completely agnostic and loosely coupled: All subsystems of the framework are registered with a dependency injector engine, so using only the configurations files you can switch between Messages brokers, Serialization formats, Rpc transports, Stream compressors, and many more.
- Integrated Log, Trace, and Status engines: you can log on different storage, also use differents trace storages and you have an integrated status library to check your service health.
- A bot subsystem to create bot services on Telegram and Slack
- Extensions methods for objects, strings, and IEnumerables.
- Aspnet Core object viewer and compiler developer tool.
Supported log storages
- Console
- File
- Html File
- MessageBroker
- ElasticSearch
Supported trace storages
- File
- MessageBroker
Supported compressors
- Gzip
- Deflate
- Brotli
Supported messages brokers
- RabbitMQ
- NATS
- NSQ
- Kafka
- Redis (Pub/Sub)
Supported key/value cache storages
- Custom TWCore
- Redis
Supported bot connectors
- Slack
- Telegram
Supported serializers
- Newtonsoft JsonNet
- XmlSerializer
- BinaryFormatter
- Utf8Json
- MsgPack
- NSerializer (Custom binary serializer with object reference graph support and cyclic reference)
- RawSerializer (Like NSerializer but without internal caching, faster, but serialized objects are bigger in bytes size.)
Simple Object Serializer Benchmark
BenchmarkDotNet=v0.11.3, OS=Windows 10.0.17134.523 (1803/April2018Update/Redstone4)\
Intel Core i7-4770R CPU 3.20GHz (Haswell), 1 CPU, 8 logical and 4 physical cores\
.NET Core SDK=2.2.101\
[Host] : .NET Core 2.2.0 (CoreCLR 4.6.27110.04, CoreFX 4.6.27110.04), 64bit RyuJIT\
Core : .NET Core 2.2.0 (CoreCLR 4.6.27110.04, CoreFX 4.6.27110.04), 64bit RyuJIT\
Job=Core Runtime=Core
Method | N | Mean | Error | StdDev | Min | Max | Gen 0/1k Op | Gen 1/1k Op | Gen 2/1k Op | Allocated Memory/Op |
---|---|---|---|---|---|---|---|---|---|---|
NewtonsoftJsonSerializerToStream | 1 | 42.935 us | 0.4296 us | 0.4019 us | 42.123 us | 43.608 us | 3.6621 | 0.1831 | - | 23296 B |
NewtonsoftJsonDeserializerFromStream | 1 | 78.432 us | 1.5565 us | 1.4560 us | 76.154 us | 80.546 us | 3.5400 | 0.8545 | - | 22960 B |
XmlSerializerToStream | 1 | 45.512 us | 0.3721 us | 0.3299 us | 44.858 us | 46.154 us | 1.8921 | - | - | 12224 B |
XmlDeserializerFromStream | 1 | 91.809 us | 1.4537 us | 1.3598 us | 89.874 us | 94.327 us | 4.5166 | 0.3662 | - | 28608 B |
BinaryFormatterSerializerToStream | 1 | 53.381 us | 0.5491 us | 0.5137 us | 52.418 us | 54.022 us | 2.5635 | - | - | 16504 B |
BinaryFormatterDeserializerFromStream | 1 | 44.802 us | 0.5174 us | 0.4840 us | 43.914 us | 45.613 us | 3.6011 | 0.4883 | - | 22720 B |
Utf8JsonSerializerToStream | 1 | 7.609 us | 0.1364 us | 0.1276 us | 7.429 us | 7.832 us | - | - | - | - |
Utf8JsonDeserializerFromStream | 1 | 20.249 us | 0.2015 us | 0.1885 us | 20.009 us | 20.641 us | 0.9460 | 0.1831 | - | 6016 B |
MessagePackSerializerToStream | 1 | 7.777 us | 0.0682 us | 0.0638 us | 7.658 us | 7.900 us | - | - | - | 96 B |
MessagePackDeserializerFromStream | 1 | 11.087 us | 0.1592 us | 0.1489 us | 10.795 us | 11.419 us | 1.3123 | 0.3204 | - | 8272 B |
NSerializerToStream | 1 | 7.823 us | 0.1440 us | 0.1347 us | 7.607 us | 8.051 us | - | - | - | - |
NDeserializerFromStream | 1 | 7.301 us | 0.0702 us | 0.0657 us | 7.106 us | 7.405 us | 0.4425 | 0.0458 | - | 2800 B |
RawSerializerToStream | 1 | 6.574 us | 0.1298 us | 0.1275 us | 6.375 us | 6.781 us | - | - | - | - |
RawDeserializerFromStream | 1 | 7.837 us | 0.0655 us | 0.0613 us | 7.748 us | 7.937 us | 0.5569 | 0.0763 | - | 3520 B |
<img src="https://raw.githubusercontent.com/tonyredondo/TWCore2/master/doc/serializer-deserializer1.png" alt="Serializer Graph" />
Created by Daniel Redondo
Powered By
<img src="https://raw.githubusercontent.com/tonyredondo/TWCore2/master/doc/rider.jpg" alt="Rider" width="50px" height="50px" /><img src="https://raw.githubusercontent.com/tonyredondo/TWCore2/master/doc/dotTrace.png" alt="dotTrace" width="50px" height="50px" /><img src="https://raw.githubusercontent.com/tonyredondo/TWCore2/master/doc/dotMemory.png" alt="dotMemory" width="50px" height="50px" />
Thanks to @jetbrains for helping on this development with the licenses for Rider, dotTrace and dotMemory
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. 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 is compatible. 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. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 is compatible. netcoreapp2.2 is compatible. netcoreapp3.0 was computed. netcoreapp3.1 is compatible. |
.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 is compatible. 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. |
-
.NETCoreApp 2.1
- TWCore (>= 3.1.0-beta1)
-
.NETCoreApp 2.2
- TWCore (>= 3.1.0-beta1)
-
.NETCoreApp 3.1
- TWCore (>= 3.1.0-beta1)
-
.NETFramework 4.7.2
- Microsoft.NETFramework.ReferenceAssemblies (>= 1.0.3)
- TWCore (>= 3.1.0-beta1)
-
.NETStandard 2.0
- TWCore (>= 3.1.0-beta1)
-
net5.0
- TWCore (>= 3.1.0-beta1)
-
net6.0
- TWCore (>= 3.1.0-beta1)
-
net7.0
- TWCore (>= 3.1.0-beta1)
-
net8.0
- TWCore (>= 3.1.0-beta1)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on TWCore.Collections:
Package | Downloads |
---|---|
TWCore.Geo
TWCore Framework. A multipurpose framework library for .net core |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
3.1.0 | 284 | 10/22/2023 |
3.1.0-beta2 | 146 | 10/20/2023 |
3.1.0-beta1 | 144 | 10/19/2023 |
3.0.0-beta5 | 572 | 9/8/2019 |
3.0.0-beta4 | 534 | 9/8/2019 |
3.0.0-beta3 | 528 | 8/20/2019 |
3.0.0-beta2 | 538 | 8/18/2019 |
3.0.0-beta1 | 536 | 8/18/2019 |
2.1.181 | 956 | 7/24/2019 |
2.1.181-beta5 | 572 | 7/16/2019 |
2.1.181-beta4 | 567 | 5/10/2019 |
2.1.181-beta3 | 541 | 3/16/2019 |
2.1.181-beta2 | 607 | 3/8/2019 |
2.1.181-beta | 555 | 3/3/2019 |
2.1.180 | 856 | 3/1/2019 |
2.1.180-rc1 | 580 | 2/28/2019 |
2.1.180-beta9 | 612 | 2/14/2019 |
2.1.180-beta8 | 626 | 2/14/2019 |
2.1.180-beta7 | 681 | 2/8/2019 |
2.1.180-beta6 | 618 | 2/7/2019 |
2.1.180-beta5 | 655 | 2/6/2019 |
2.1.180-beta4 | 635 | 2/5/2019 |
2.1.180-beta3 | 623 | 2/4/2019 |
2.1.180-beta2 | 629 | 2/4/2019 |
2.1.180-beta1 | 638 | 2/4/2019 |
2.1.180-alpha8 | 640 | 1/30/2019 |
2.1.180-alpha7 | 675 | 1/22/2019 |
2.1.180-alpha6 | 647 | 1/21/2019 |
2.1.180-alpha5 | 671 | 1/18/2019 |
2.1.180-alpha4 | 744 | 1/17/2019 |
2.1.180-alpha3 | 685 | 1/16/2019 |
2.1.180-alpha2 | 680 | 1/16/2019 |
2.1.180-alpha1 | 682 | 1/15/2019 |
2.1.179 | 868 | 1/9/2019 |
2.1.179-beta9 | 671 | 1/3/2019 |
2.1.179-beta8 | 657 | 1/2/2019 |
2.1.179-beta7 | 697 | 1/2/2019 |
2.1.179-beta6 | 672 | 12/21/2018 |
2.1.179-beta5 | 613 | 12/19/2018 |
2.1.179-beta4 | 631 | 12/19/2018 |
2.1.179-beta3 | 660 | 12/19/2018 |
2.1.179-beta2 | 628 | 12/18/2018 |
2.1.179-beta12 | 671 | 1/8/2019 |
2.1.179-beta11 | 656 | 1/7/2019 |
2.1.179-beta10 | 647 | 1/4/2019 |
2.1.179-beta1 | 643 | 12/18/2018 |
2.1.179-alpha9 | 640 | 12/18/2018 |
2.1.179-alpha8 | 685 | 11/28/2018 |
2.1.179-alpha7 | 696 | 11/22/2018 |
2.1.179-alpha6 | 711 | 11/20/2018 |
2.1.179-alpha5 | 651 | 11/20/2018 |
2.1.179-alpha4 | 677 | 11/20/2018 |
2.1.179-alpha3 | 685 | 11/19/2018 |
2.1.179-alpha2 | 675 | 11/16/2018 |
2.1.179-alpha | 720 | 11/16/2018 |
2.1.178 | 979 | 11/6/2018 |
2.1.178-beta2 | 694 | 11/6/2018 |
2.1.178-beta1 | 654 | 10/29/2018 |
2.1.178-alpha7 | 688 | 10/22/2018 |
2.1.178-alpha6 | 683 | 10/19/2018 |
2.1.178-alpha5 | 689 | 10/17/2018 |
2.1.178-alpha4 | 698 | 10/14/2018 |
2.1.178-alpha3 | 704 | 10/13/2018 |
2.1.178-alpha2 | 726 | 10/9/2018 |
2.1.178-alpha | 727 | 10/9/2018 |
2.1.177 | 990 | 9/27/2018 |
2.1.177-rc4 | 677 | 9/26/2018 |
2.1.177-rc3 | 704 | 9/26/2018 |
2.1.177-rc2 | 686 | 9/26/2018 |
2.1.177-rc1 | 677 | 9/25/2018 |
2.1.177-beta | 747 | 9/25/2018 |
2.1.177-alpha | 693 | 9/24/2018 |
2.1.176 | 994 | 9/20/2018 |
2.1.175 | 971 | 9/19/2018 |
2.1.174 | 958 | 9/16/2018 |
2.1.173 | 966 | 9/12/2018 |
2.1.173-beta | 715 | 9/12/2018 |
2.1.172 | 979 | 9/11/2018 |
2.1.171 | 969 | 8/27/2018 |
2.1.171-rc1 | 732 | 8/27/2018 |
2.1.171-beta | 702 | 8/27/2018 |
2.1.170 | 1,047 | 8/15/2018 |
2.1.169 | 1,015 | 8/14/2018 |
2.1.168 | 1,068 | 8/10/2018 |
2.1.167 | 1,137 | 8/9/2018 |
2.1.166 | 1,096 | 8/9/2018 |
2.1.165 | 1,093 | 8/9/2018 |
2.1.164 | 1,148 | 8/8/2018 |
2.1.163 | 1,070 | 8/8/2018 |
2.1.162 | 1,076 | 8/8/2018 |
2.1.161 | 1,118 | 8/8/2018 |
2.1.160 | 1,089 | 8/7/2018 |
2.1.159 | 1,035 | 8/3/2018 |
2.1.158 | 1,083 | 8/2/2018 |
2.1.157 | 1,037 | 8/1/2018 |
2.1.156 | 1,037 | 7/30/2018 |
2.1.155 | 1,040 | 7/29/2018 |
2.1.154 | 1,060 | 7/19/2018 |
2.1.153 | 1,162 | 7/12/2018 |
2.1.152 | 1,156 | 7/11/2018 |
2.1.151 | 1,133 | 7/11/2018 |
2.1.150 | 1,170 | 7/11/2018 |
2.1.149 | 1,192 | 7/10/2018 |
2.1.148 | 1,207 | 7/4/2018 |
2.1.147 | 1,064 | 7/3/2018 |
2.1.146 | 1,143 | 7/1/2018 |
2.1.145 | 1,160 | 7/1/2018 |
2.1.144 | 1,100 | 6/28/2018 |
2.1.143 | 1,027 | 6/25/2018 |
2.1.142 | 1,163 | 6/19/2018 |
2.1.141 | 1,079 | 6/19/2018 |
2.1.140 | 1,061 | 6/18/2018 |
2.0.149 | 1,197 | 7/10/2018 |
2.0.148 | 1,061 | 7/4/2018 |
2.0.147 | 1,087 | 7/3/2018 |
2.0.146 | 1,210 | 7/1/2018 |
2.0.145 | 1,232 | 7/1/2018 |
2.0.144 | 1,157 | 6/28/2018 |
2.0.143 | 1,257 | 6/25/2018 |
2.0.142 | 1,184 | 6/19/2018 |
2.0.141 | 1,217 | 6/19/2018 |
2.0.140 | 1,219 | 6/18/2018 |
2.0.139 | 1,104 | 6/18/2018 |
2.0.138 | 1,082 | 6/15/2018 |
2.0.137 | 1,091 | 6/15/2018 |
2.0.136 | 1,155 | 6/12/2018 |
2.0.135 | 1,136 | 6/11/2018 |
2.0.134 | 1,077 | 6/11/2018 |
2.0.133 | 1,154 | 6/11/2018 |
0.2.132 | 1,105 | 5/25/2018 |
0.2.131 | 1,137 | 5/21/2018 |
0.2.130 | 1,115 | 5/20/2018 |
0.2.129 | 1,210 | 5/20/2018 |
0.2.128 | 1,107 | 5/14/2018 |
0.2.127 | 1,153 | 5/11/2018 |
0.2.126 | 1,222 | 5/10/2018 |
0.2.125 | 1,246 | 5/8/2018 |
0.2.124 | 1,277 | 4/30/2018 |
0.2.123 | 1,274 | 4/29/2018 |
0.2.122 | 1,340 | 4/27/2018 |
0.2.121 | 1,203 | 4/26/2018 |
0.2.120 | 1,101 | 4/25/2018 |
0.2.119 | 1,189 | 4/25/2018 |
0.2.118 | 1,156 | 4/25/2018 |
0.2.117 | 1,166 | 4/24/2018 |
0.2.116 | 1,233 | 4/24/2018 |
0.2.115 | 1,208 | 4/19/2018 |
0.2.114 | 1,195 | 4/19/2018 |
0.2.113 | 1,170 | 4/19/2018 |
0.2.112 | 1,176 | 4/18/2018 |
0.2.111 | 1,258 | 4/18/2018 |
0.2.110 | 1,197 | 4/18/2018 |
0.2.109 | 1,086 | 4/17/2018 |
0.2.108 | 1,121 | 4/17/2018 |
0.2.107 | 1,170 | 4/9/2018 |
0.2.106 | 1,319 | 4/6/2018 |
0.2.105 | 1,216 | 4/3/2018 |
0.2.104 | 1,111 | 4/2/2018 |
0.2.103 | 1,216 | 3/28/2018 |
0.2.102 | 1,232 | 3/28/2018 |
0.2.101 | 1,230 | 3/28/2018 |
0.2.100 | 1,241 | 3/27/2018 |
0.2.99 | 1,369 | 3/24/2018 |
0.2.98 | 1,343 | 3/23/2018 |
0.2.97 | 1,219 | 3/19/2018 |
0.2.96 | 1,217 | 3/16/2018 |
0.2.95 | 1,250 | 3/15/2018 |
0.2.94 | 1,162 | 3/13/2018 |
0.2.93 | 1,260 | 3/12/2018 |
0.2.92 | 1,249 | 3/12/2018 |
0.2.91 | 1,290 | 3/12/2018 |
0.2.90 | 1,215 | 3/11/2018 |
0.2.89 | 1,133 | 3/6/2018 |
0.2.88 | 1,156 | 3/2/2018 |
0.2.87 | 1,183 | 3/1/2018 |
0.2.86 | 1,219 | 2/28/2018 |
0.2.85 | 1,258 | 2/28/2018 |
0.2.84 | 1,149 | 2/28/2018 |
0.2.83 | 1,246 | 2/27/2018 |
0.2.82 | 1,235 | 2/26/2018 |
0.2.81 | 1,108 | 2/23/2018 |
0.2.80 | 1,223 | 2/22/2018 |
0.2.79 | 1,191 | 2/21/2018 |
0.2.78 | 1,229 | 2/16/2018 |
0.2.77 | 1,220 | 2/14/2018 |
0.2.76 | 1,240 | 2/14/2018 |
0.2.75 | 1,225 | 2/9/2018 |
0.2.74 | 1,148 | 2/9/2018 |
0.2.73 | 1,204 | 2/1/2018 |
0.2.72 | 1,252 | 1/31/2018 |
0.2.71 | 1,235 | 1/30/2018 |
0.2.70 | 1,143 | 1/29/2018 |
0.2.69 | 1,260 | 1/26/2018 |
0.2.68 | 1,175 | 1/23/2018 |
0.2.67 | 1,212 | 1/22/2018 |
0.2.66 | 1,243 | 1/22/2018 |
0.2.65 | 1,134 | 1/19/2018 |
0.2.64 | 1,236 | 1/17/2018 |
0.2.63 | 1,221 | 1/16/2018 |
0.2.62 | 1,204 | 1/15/2018 |
0.2.61 | 1,107 | 12/18/2017 |
0.2.60 | 1,144 | 12/6/2017 |
0.2.59 | 1,107 | 12/5/2017 |
0.2.58 | 1,129 | 12/4/2017 |
0.2.57 | 1,182 | 12/1/2017 |
0.2.56 | 1,212 | 11/30/2017 |
0.2.55 | 1,146 | 11/28/2017 |
0.2.54 | 1,093 | 11/28/2017 |
0.2.53 | 1,122 | 11/28/2017 |
0.2.52 | 1,116 | 11/26/2017 |
0.2.51 | 1,136 | 11/24/2017 |
0.2.50 | 1,162 | 11/23/2017 |
0.2.49 | 1,113 | 11/17/2017 |
0.2.48 | 1,208 | 11/17/2017 |
0.2.47 | 1,150 | 11/16/2017 |
0.2.46 | 1,158 | 11/15/2017 |
0.2.45 | 1,135 | 11/13/2017 |
0.2.44 | 1,160 | 11/7/2017 |
0.2.43 | 1,125 | 11/7/2017 |
0.2.42 | 1,163 | 11/6/2017 |
0.2.41 | 1,131 | 10/31/2017 |
0.2.40 | 1,133 | 10/31/2017 |
0.2.39 | 1,180 | 10/26/2017 |
0.2.38 | 1,187 | 10/26/2017 |
0.2.37 | 1,160 | 10/25/2017 |
0.2.36 | 1,165 | 10/23/2017 |
0.2.35 | 1,168 | 10/20/2017 |
0.2.34 | 1,158 | 10/13/2017 |
0.2.33 | 1,118 | 10/10/2017 |
0.2.32 | 1,151 | 10/9/2017 |
0.2.31 | 1,155 | 10/7/2017 |
0.2.30 | 1,150 | 10/6/2017 |
0.2.29 | 1,093 | 9/29/2017 |
0.2.28 | 1,128 | 9/27/2017 |
0.2.27 | 1,142 | 9/25/2017 |
0.2.26 | 1,169 | 9/22/2017 |
0.2.25 | 1,145 | 9/20/2017 |
0.2.24 | 1,161 | 9/19/2017 |
0.2.23 | 1,139 | 9/13/2017 |
0.2.22 | 1,117 | 9/13/2017 |
0.2.21 | 1,143 | 9/13/2017 |
0.2.20 | 1,135 | 9/13/2017 |
0.2.19 | 1,150 | 9/12/2017 |
0.2.18 | 1,183 | 9/12/2017 |
0.2.17 | 1,165 | 9/11/2017 |
0.2.16 | 1,157 | 9/11/2017 |
0.2.15 | 1,140 | 9/8/2017 |
0.2.10 | 1,141 | 9/8/2017 |
0.2.9 | 1,178 | 8/29/2017 |
0.2.6 | 1,148 | 8/25/2017 |
0.2.5 | 1,206 | 8/16/2017 |
0.2.1-alpha | 868 | 8/16/2017 |
0.2.0-alpha | 846 | 8/7/2017 |