Tolitech.CodeGenerator.Auditing 1.0.3-alpha-1

This is a prerelease version of Tolitech.CodeGenerator.Auditing.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Tolitech.CodeGenerator.Auditing --version 1.0.3-alpha-1                
NuGet\Install-Package Tolitech.CodeGenerator.Auditing -Version 1.0.3-alpha-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="Tolitech.CodeGenerator.Auditing" Version="1.0.3-alpha-1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Tolitech.CodeGenerator.Auditing --version 1.0.3-alpha-1                
#r "nuget: Tolitech.CodeGenerator.Auditing, 1.0.3-alpha-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 Tolitech.CodeGenerator.Auditing as a Cake Addin
#addin nuget:?package=Tolitech.CodeGenerator.Auditing&version=1.0.3-alpha-1&prerelease

// Install Tolitech.CodeGenerator.Auditing as a Cake Tool
#tool nuget:?package=Tolitech.CodeGenerator.Auditing&version=1.0.3-alpha-1&prerelease                

Tolitech.CodeGenerator.Auditing

Auditing library used in projects created by the Code Generator tool.

This project helps to discover the differences found between two entities, an old one recovered and a new one to be recorded.

Tolitech Code Generator Tool: http://www.tolitech.com.br

Examples:

public class PersonEntity : AuditableEntity
{
    public PersonEntity(string name, int age, string email)
    {
        using var scope = new AuditScope(this, EventTypeEnum.Insert);
        Name = name;
        Age = age;
        Email = new EmailValueObject(email, name);
    }

    public string Name { get; set; }

    public int Age { get; set; }

    public EmailValueObject Email { get; set; }

    public void ChangeName(string newName)
    {
        using var scope = new AuditScope(this, EventTypeEnum.Update);
        Name = newName;
    }

    public void ChangeAge(int newAge)
    {
        using var scope = new AuditScope(this, EventTypeEnum.Update);
        Age = newAge;
    }
}
Audit.EnableEntitity(typeof(PersonEntity).FullName);
bool b = Audit.IsEntityEnabled(typeof(PersonEntity).FullName);
var person = new PersonEntity()
{
    Name = "Person One",
    Age = 18
};

person.ChangeName("Person Two");
person.ChangeAge(21);
var audit = person.Audit();

audit.AttributesDiff[0].Name == "Name"; // this is true 
audit.AttributesDiff[0].Old == "Person One"; // this is true 
audit.AttributesDiff[0].New == "Person Two"; // this is true 

audit.AttributesDiff[1].Name == "Age"; // this is true 
audit.AttributesDiff[1].Old == "18"; // this is true 
audit.AttributesDiff[1].New == "21"; // this is true 
Product Compatible and additional computed target framework versions.
.NET 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 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 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Tolitech.CodeGenerator.Auditing:

Package Downloads
Tolitech.CodeGenerator.Auditing.Trail

Auditing trail library for Tolitech Code Generator.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.3-alpha-5 194 2/23/2022
1.0.3-alpha-4 161 2/23/2022
1.0.3-alpha-3 154 2/23/2022
1.0.3-alpha-2 154 2/18/2022
1.0.3-alpha-1 1,122 12/1/2021
1.0.2 514 1/3/2021
1.0.1 408 1/3/2021
1.0.0 467 6/28/2020

More information at http://www.tolitech.com.br/