Skip to content
goncalod edited this page Apr 21, 2016 · 11 revisions

Welcome to my github page folks.

I hope you'll be happy looking the stuff that I have here. Personally I am very happy that you end up here with curiosity about stuff that I do.

Here I have some projects, research, curious stuff that I like to do and look more in depth.

Here you can find OMapper, CodeToUMLNotation and also you can see have access to the structure of my solution with all my code with implementations from low level synchronizers, collections, thread-pool, sorting algorithms, until more abstract code for Winforms, Webforms and MVC helpers.

OMapper

  • That let you choose eager or contextualized instances that talk direcly with database as an ORM very close to the say that Entity Framework does.

My own developed ORM written from scratch. I've started to code OMapper in 2012. In that time was able to Select objects from database using convention, call parameterized queries for Insert, Update and Delete automatically, producing automatically the commands to each object type. It was a simple version, where for each call to those operations, open a connection, create the command and execute it – hence not transactional.

Now in 2016 I've improved it and I make it very similiar with .NET EntityFramework. All those operations are put on old until Submit is called, where opens a transaction and sends all those commands to database. Only updated properties from the objects are sent within the Update command avoiding contention in SQL as EntityFramework does. ChangeTracking system is implemented to perform Update operation minimal, Insert operation stores respectivelly the ID from database into the respective CLR object. With this ORM you can also return until 3 ResultSets in a statement and map to at least 3 different Lists of objects. With this implementation you can choose if you prefer use Context (transaction based), Eager Execution (method call reflects in a connection being open and the command being sent per call) or even super light-weight CLR Mapping where Select operations are able to map projections into CLR Objects

EntityFramework benchmark:

OMapper benchmark:

CodeToUMLNotation

  • that interprets code and builds UML for you.

A windows form application that helps me to connect classes and make a UML structure of the code. The main purpose of this application is to instead of load and compile the code, use interpretation. With that I can load UML Structure without having all dependencies of that class loaded. Very util when I am new to projects.

Clone this wiki locally