THN logo

THN Solutions

Data Abstraction Layer (DAL)

  • Overview
  • Features
  • Benefits
  • Architecture

Summary

THN's DAL is an abstraction layer that aims at freeing developers from dealing with the nuts and bolts of data management. DAL dramatically improve the the productivity and quality of developing data-aware applications.

Technical Paper:

Data Abstraction Layer: Independent from Data

pdf document (291KB, last updated: 08/07/2008, author: Nguyen, M. Hai)

Video Clip:

Introduction to DAL Technology

If you experience anomalies while viewing online, download the offline version for better viewing experience.

  • * Works with MS SQL, Oracle, Access, MySQL, Firebird
  • * Works with practically any RDBMS
  • * Works with ODBMS and unconventional DBMS (web service, xml, email, custom, etc.) using simple adapters
  • * Support type safety
  • * Flexible query object
  • * Flexible conditional object
  • * Serializable query commands
  • * Multi-level and deferred transaction
  • * Atomic transaction by design
  • * Automatic SQL-injection attack prevention
  • * 100% pure managed code
  • * POCO (plain old C# object). Conform to CLS 1.1
  • * Reduced coding time
  • * Reduced testing time
  • * Reduced designing time
  • * Reduced time to market
  • * Independent from physical database
  • * Protected from changes in DBMS or database design
  • * Protected from SQL-injection attack

THN's Data Access Layer Architecture

(click the image for bigger view)


DAL is designed based on the principle of database independency. Even though object-to-relational is a major feature, DAL is not bounded to relational databases. It can work with other types of database management system such as ODBMS, xml, web services, message queques, etc.

Not only that, DAL's open architecture allows high degree of extensibility. DAL can be used in in other tiers beside data tier (see FlexObj). Any component of DAL (query, query processing, object mapping, database) can be substituted by custom strategies to better suit specific needs.