Project Description

Almost all .NET projects (desktop/web/tablet/mobile...) uses databases as backend to store and retrieve their data. ADO.NET library is the first choice that comes in mind, however, much effort and time is required to develop and maintain projects using ADO.NET alone, so some prefer to use ORMs or other available solutions.

This toolkit is created to boost productivity and performance by addressing issues that we face in small and large projects, while using ADO.NET. Use this toolkit to interact with your database to fulfill your application requirements with minimum code and across databases and without taking care about Connections, Commands and Transactions etc. directly.

This library is developed in free times, posting it here for those who are interested to use it in their projects.

Improve the Toolkit
If you need help to use it, ask under Discussions tab.
If you find a bug or want to see new features, post it under Issues tab.

Supported Databases
SQL Server : 2005, 2008 R2, 2012 and later
My SQL and others will be added later

Basic CRUD Operations - (Create Read Update Delete)

DbxSettings settings = new DbxSettings(DbxServerType.SQLServer, "Server=myserver;Database=mydb;User ID=username;Password=password");
DbxServer.GetServer(settings, true);

var table = new DbxDynamicTable("Contacts”, “ContactID");

var item = table.FindItem("10BD0BAA-73C3-85F8-0C5F-39C129798BA9");  

item = table.NewItem();
item.SetValue("FullName", "Mr. My Name");
item.SetValue(
"EmailAddress", "myname@localhost.com");
item.SetValue(
"JobTitle", "Developer");
item.Save();                               
// Insert new Item in database-table
item.Reload();                              // Reload item from table

// modify item
item.SetValue("JobTitle", "Senior Developer");
bool isItemModified = item.IsModified;

item.Save();                                // Update item in table
item.Delete();                              // Delete item from table
item.Save();                                // Insert same-item again in table

// check the last-operation performed on this item
int lastOperation = item.ItemLastOperationType;  // 0-none, 1-Inserted, 2-Updated, 3-Deleted

// get item column-value
object itemValue = item.GetValue("FullName");
item.Exists();                             
// item exists in database-table 

item.Saved += item_Saved;                   // event-raised after item Inserted/Updated
item.Deleted += item_Deleted;               // event-raised after item Deleted

item.EnableValueChangeEvent = true;         // enable/disable event
item.ValueChanged += item_ValueChanged;            // event-raised on item-column value changed

Learning Curve

If you know SQL and how to code in .NET, just USE it.

Performance

This is a pure SQL solution having no performance overheads like ORMs, Entity or other frameworks.

What’s Next

Want to accomplish the same or something-new in more simplified/better form, please let me know How?, I will add it to the Toolkit.

See Tutorial under Documentation tab, to explore more features.

Last edited Feb 13, 2014 at 5:42 AM by MYousaf, version 8