Knight Data Access Layer is the swiss army knife of Object Relational Mapping, Data Access, and LINQ. A key differentiator is the ability to automatically map from classes to tables without any mapping files, attributes, visual models, or convention definitions. The auto mapper can also map SQL and stored procedure results to classes without any mapping definition. When properties and database columns are named differently; mapping can be defined using attributes, code, or XML Mapping files. Auto increment primary keys, GUID primary keys, and composite keys are supported. Mappings can even be overridden at run time.
Knight Data Access Layer is compatible with SQL Server, Oracle, MySQL Firebird, SQLite, VistaDB, Microsoft Access or any ODBC or OLEDB compliant database. Custom database providers can be easily implemented.
There is no need to revert to ADO.NET as everything can be executed within the library. Typical operations are supported such as creating databases, creating tables, executing stored procedures, truncating tables, and executing straight SQL.
LINQ is fully supported for any select operations including: aggregate, union, skip, take and much more. Knight Data Access Layer supports LINQ to SQL Server, LINQ to Oracle, LINQ to MySql, LINQ to Sqlite, LINQ to VistaDb, LINQ to Firebird, and LINQ to Microsoft Access.
Code First Approach, Database First Approach, and No Approach (DataTables and Dictionaries) are all supported. Several generation features are included such as creating classes from tables, creating tables from classes, synchronizing namespaces to a database, generating table scripts, and generating upgrade scripts.
Knight Data Access Layer is SDLC Environmental friendly. Mappings for Schema/Owner plus table names can be switched on the fly at run time. This is useful for switching to a different test environment, switching to use staging tables, or switching to use archive versions of tables.
Compatible with SQL Server, Oracle, MySql, Firebird, Sqlite, MS Access, VistaDB or any ODBC or OLEDB compliant database.
Fully automatic ORM (Object Relational Mapping) without mapping files, attributes, models, or convention configuration.
Full LINQ support for SQL Server, Oracle, MySql, Firebird, Sqlite, MS Access, and VistaDB.
Extended ADO.NET support.
Advanced pattern support including session factory, unit of work, and active record.
Several generation options including SQL table creation and table upgrade scripting, plus class generation from tables.