aqua - aqua-core 5.4.1

Transform any object-graph into a dynamic, composed dictionaries like structure, holding serializable values and type information.

  Commonly Used Types:
  Aqua.Dynamic.DynamicObject
  Aqua.Dynamic.DynamicObjectMapper
  Aqua.TypeSystem.ConstructorInfo
  Aqua.TypeSystem.FieldInfo
  Aqua.TypeSystem.MethodInfo
  Aqua.TypeSystem.TypeInfo
  Aqua.TypeSystem.PropertyInfo

PM> Install-Package aqua-core -Version 5.4.1 -Source https://www.myget.org/F/aqua/api/v3/index.json

Copy to clipboard

> nuget.exe install aqua-core -Version 5.4.1 -Source https://www.myget.org/F/aqua/api/v3/index.json

Copy to clipboard

> dotnet add package aqua-core --version 5.4.1 --source https://www.myget.org/F/aqua/api/v3/index.json

Copy to clipboard
<PackageReference Include="aqua-core" Version="5.4.1" />
Copy to clipboard
source https://www.myget.org/F/aqua/api/v3/index.json

nuget aqua-core  ~> 5.4.1
Copy to clipboard

> choco install aqua-core --version 5.4.1 --source https://www.myget.org/F/aqua/api/v2

Copy to clipboard
Import-Module PowerShellGet
Register-PSRepository -Name "aqua" -SourceLocation "https://www.myget.org/F/aqua/api/v2"
Install-Module -Name "aqua-core" -RequiredVersion "5.4.1" -Repository "aqua" 
Copy to clipboard

Browse the sources in this package using Visual Studio or WinDbg by configuring the following symbol server URL: https://www.myget.org/F/aqua/api/v2/symbolpackage/


aqua-core

GitHub license Github Workflow

branch AppVeyor Travis CI Codecov.io Codacy CodeFactor
main AppVeyor Build Status Travis Build Status codecov Codacy Badge CodeFactor
package nuget myget
aqua-core NuGet Badge MyGet Pre Release
aqua-core-newtonsoft-json NuGet Badge MyGet Pre Release
aqua-core-protobuf-net NuGet Badge MyGet Pre Release
aqua-core-text-json NuGet Badge MyGet Pre Release

Transform any object-graph into a dynamic, composed dictionaries like structure, holding serializable values and type information.

Aqua-core provides a bunch of serializable classes:

  • DynamicObject
  • TypeInfo
  • FieldInfo
  • PropertyInfo
  • MethodInfo
  • ConstructorInfo

Any object graph may be translated into a DynamicObject structure and back to it's original type using DynamicObjectMapper.

Sample

Mapping an object graph into a DynamicObject and then back to it's original type

Blog blog = new Blog
{
    Title = ".NET Blog",
    Description = "A first-hand look from the .NET engineering teams",
    Posts = new[]
    {
        new Post
        {
            Title = "Announcing .NET Core 1.0",
            Date = new DateTime(2016, 6, 27),
            Author = "rlander"
            Text = "We are excited to announce the release of .NET Core 1.0, ASP.NET Core 1.0 and " +
               "Entity Framework Core 1.0, available on Windows, OS X and Linux! " +
               ".NET Core is a cross-platform, open source, and modular .NET platform [...]",
        },
        new Post
        {
            Title = "Happy 15th Birthday .NET!",
            Date = new DateTime(2017, 2, 13),
            Author = "bmassi",
            Text = "Today marks the 15th anniversary since .NET debuted to the world [...]",
        }
    }
}

DynamicObject dynamicObject = new DynamicObjectMapper().MapObject(blog);

Blog restoredBlog = new DynamicObjectMapper().Map(dynamicObject) as Blog;
  • .NETFramework 6.0
  • .NETFramework 8.0
  • .NETStandard 2.0
    • System.Reflection.Emit (>= 4.7.0)
  • .NETStandard 2.1
  • .NETFramework 6.0: 6.0.0.0
  • .NETFramework 8.0: 8.0.0.0
  • .NETStandard 2.0: 2.0.0.0
  • .NETStandard 2.1: 2.1.0.0

Owners

Christof Senn

Authors

Christof Senn

Project URL

https://github.com/6bee/aqua-core

License

MIT

Tags

type-info dynamic-object expando-object object-mapping object-mapper

Info

380 total downloads
8 downloads for version 5.4.1
Download (278.25 KB)
Download symbols (370.43 KB)
Found on the current feed only

Package history

Version Size Last updated Downloads Mirrored?
5.4.1 278.25 KB Wed, 10 Jul 2024 12:14:36 GMT 8
5.4.0 278.22 KB Tue, 04 Jun 2024 13:32:21 GMT 11
5.4.0-beta-001 278.31 KB Tue, 30 Apr 2024 23:55:11 GMT 21
5.4.0-alpha-005 278.3 KB Tue, 23 Apr 2024 07:24:51 GMT 7
5.4.0-alpha-004 278.94 KB Mon, 29 Jan 2024 10:02:34 GMT 21
5.4.0-alpha-002 279.42 KB Wed, 13 Dec 2023 09:42:34 GMT 33
5.4.0-alpha-001 280.07 KB Wed, 06 Dec 2023 14:21:35 GMT 37
5.3.0 192.15 KB Thu, 14 Sep 2023 02:19:52 GMT 242