Symbiotic_Core_x64 1.0.6

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.
Paralle Load support.
Validation support.

Install-Package Symbiotic_Core_x64 -Version 1.0.6
dotnet add package Symbiotic_Core_x64 --version 1.0.6
<PackageReference Include="Symbiotic_Core_x64" Version="1.0.6" />
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.6
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Please migrate to use the Net Standard version:

https://www.nuget.org/packages/Symbiotic_Micro_ORM_Net_Standard_x64/

You can now download the "Symbiotic Code Generator" from the Windows Store.
The code generator creates the poco classes from the database schema, adds needed attributes and any extended interfaces as requested. Supports c# and VB.NET.
https://www.microsoft.com/store/productId/9NN20Q6WFKGS

Thanks,
Eric

Please migrate to use the Net Standard version:

https://www.nuget.org/packages/Symbiotic_Micro_ORM_Net_Standard_x64/

You can now download the "Symbiotic Code Generator" from the Windows Store.
The code generator creates the poco classes from the database schema, adds needed attributes and any extended interfaces as requested. Supports c# and VB.NET.
https://www.microsoft.com/store/productId/9NN20Q6WFKGS

Thanks,
Eric

Release Notes

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

v1.06

19-Feb-2017
More exception improvements.

21-Feb-2017
Fixed issue when loading relationships using postgressql, dictionary issue of int32 vs int64
Updating postgresql sql scripts.
Fixed an issue in .net type to database type mapping, we now pass in the database type so we can use DateTime2 for sql server.

3-Mar-2017
Changed ObjectLoader.ExecuteScalar method, now prevents insert, update, delete calls. Since it's a load object, I don't want code created using the objectLoader and doing database writes.
I added ObjectWriter.ExecuteScalar method which will allow the developer to insert, update, delete.
Also you can override ObjectLoader.ValidateNoWrite if you need to disable this in case you have a ton of code doing this.

9-Mar-2017
Found and fixed obscure threading bug in sql builder.

11-Mar-2017
Added overload to InsertUpdate(ByVal items As IEnumerable, ByVal transaction As DbTransaction) to include a transaction.

13-Mar-2017
Improved error messgae if an unsupported .net type is found .net to DBtype mappings. IDatabaseTypesFactory.PropertyTypeToDatabaseType()
Found an design issue related to Sql Server DateTime vs DateTime2 data types. Added DateTimeType property to the DatabaseColumnAttribute, this allows the developer to specify the date type.
Considering the ability to set a default datetime type, currently defaults to DateTime2.
Working on a new API for allowing reads and Writes to the same method, this allows better interaction between read and writes using the same transaction.

14-Mar-2017
Added a default datetime type to DatabaseTypesFactorySqlServer, currently defaults to DateTime2.

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
1.0.6 426 3/26/2017
1.0.5 356 2/13/2017
1.0.4.2 371 10/25/2016
1.0.4.1 355 9/20/2016
1.0.4 327 9/7/2016
1.0.3.1 281 9/5/2016
1.0.2.1 302 5/26/2016
1.0.2 333 5/25/2016