Symbiotic_Core_x64 1.0.4.2

The owner has unlisted this package. This could mean that the package is deprecated, has security vulnerabilities or shouldn't be used anymore.
dotnet add package Symbiotic_Core_x64 --version 1.0.4.2
NuGet\Install-Package Symbiotic_Core_x64 -Version 1.0.4.2
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="Symbiotic_Core_x64" Version="1.0.4.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Symbiotic_Core_x64 --version 1.0.4.2
#r "nuget: Symbiotic_Core_x64, 1.0.4.2"
#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 Symbiotic_Core_x64 as a Cake Addin
#addin nuget:?package=Symbiotic_Core_x64&version=1.0.4.2

// Install Symbiotic_Core_x64 as a Cake Tool
#tool nuget:?package=Symbiotic_Core_x64&version=1.0.4.2

Small and simple to use and understand.
Full object hierarchy CRUD support. Saves all object properties and the relationships to related tables. Also supports collection properties.
Allows developers to write sql as needed for reads. The design just maps the results to the objects. Writes are tightly coupled to the database and build on primary key constraints.
No inheritance requirements, uses either interface implementation or attributes.
Allows developers to modify the relation sql to further optimize loading of children.
Database constraints tolerant.
Lazy initialization support, with child sql override.
Change trackng support to history tables.
Supported databases: Sql Server, My Sql, Sqlite, Oracle, PostgreSql.
Built-in Performance tracking, implement IPerformanceTracking to allow performance tracking of all database actions.
Optimistic concurrency support.
No configuration files needed.
Trace output of SQL statements and parameter values.
Password one way hashing support.
Field level encryption with auto decrypt upon load ability.
Processing intercept support, BeforeInsert, BeforeUpdate, BeforeDelete, AfterLoad.
Database deprecation support.
Parallel Load support.
Validation support.

Product Compatible and additional computed target framework versions.
.NETPlatform dotnet is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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

' ********************************************************
' **** Copyright © 2011-2016 Frozen Elephant Inc.     ****
' ********************************************************

26-Sep-2016
Fixed a bug in IObjectChangedSupport, ORM was not marking all loaded objects a old/unchanged. Improved related unit test.
Added overload to ExecuteNonQuery call to support a collection of ISqlQuery, ISqlQuery.RowsChanged will indicate rows changed for each call. All calls are wrapped in a transaction.
Added more unit tests for sql validation.

6-Oct-2016
Added a way to pass a label when calling the various  ExecuteSql commands. The label will show in the trace output when errors are raised. This will simplify troubleshooting.
I Added ISqlQuery.SqlLabel property which will be included in traced commands, also to improve debugging.

Working on enhancements to support simple reads while using a different table other than the one specified in the DatabaseTable attribute.
Added an overload ObtainItem(Id) to allow passing in a ISqlQuery object.

Working on adding support for validation. System.ComponentModel.DataAnnotations.

11-Oct-2016
Added argument null checks on ISqlQuery.ReturnType ParallelLoad methods.
Creating unit test to test the new DatabaseTable Read/Write attributes.

15-Oct-2016
Finished unit test for the new DatabaseReadTable attribute.
Renamed test methods, removed the word "Test" from the names, makes it easier to find test.
Finished unit test for the new DatabaseWriteTable attribute.

17-Oct-2016
Update xml comments of ObjectLoader.ObtainItem to clarify what is returned when an item for the specified id is not found.
Added some changes for InsertUpdate when implementing IObjectChangedSupport, no longer checks for existing record when IsNew.
Added factory method to create a ISqlQuery object.
Refactored the creation of ISqlQuery objects from within the framework and unit tests to use the IDatabaseTypesFactory interface, which is where all object specific type creation should be controlled, this allows developers full control of object creation.
Still working on Validation support.

19-Oct-2016
Found and fixed InsertUpdate Bug. The check for existing record was including a row version check, so if you had a stale record it would try to insert and would fail with primary key unique contraint error. It should instead fail throw a DatabaseConcurrencyException.
Added unit test for InsertUpdate concurrency bug. While writing the unit test I found a hole in row version related to smalldatetime, not enough precion.

20-Oct-2016
Still working on Validation support.
Need validation test for custom validation attribute, an object that implements IValidatableObject, and also using ComponentModel.DataAnnotations.CustomValidation.

23-Oct-2016
Finishing-up support for validation.

24-Oct-2016
IDatabaseTypesFactory.ShouldPerformValidation was added to indicate if validation should be performed. Defaults to true.
Wrote unit tests for the ORM validation calls.
Documented thrown exceptions.
Working on Nuget package.
Data Provider libraries are now included on the nuget package. See DataProviders folder