This project aims to provide a .Net 4.0 LINQPad
Telerik's OpenAccess ORM
It relies on the following dependencies:
Unit tests are based on: (as soon as they're finished ;))
Although the driver itself is still in beta stage, many important features are already implemented, but not yet fully tested.
Just give it a try, feedback is appreciated.
- supported constructors
- () => public parameterless (should work for all backends, app.config file is mandatory in this case)
- (string,BackendConfiguration,MetadataSource) => connection string, backend config, metadatasource (tested for MsSql, should work for others too as long as the default backend configuration is used)
- Lazy-Loading is disabled by default for output operations. Does not affect previously loaded/included data.
- Executed SQL-Statements (e.g. by LINQ queries) are logged to the SQL-Result window.
- OpenAccess assemblies + namespaces are added automatically.
- A mix of reflection and the context's metadata container is used to build up the schema.
- Hyperlinks are generated from NavigationProperty to NavigationProperty if possible, otherwise from NavigationProperty to the corresponding target entity (e.g. for one-sided NavigationMembers).
- UI / Configuration
- Basic settings
- Context discovery from custom assembly. (Includes the default backend configuration + metadata source and other available metadata sources (Xml, Fluent, Attributes)
- Option to use the default constructor
- Backend settings
- backend and the corresponding provider can be selected. Relies on a list of pre-registered mappings. (not fully completed)
- Custom logging/tracing settings: not yet implemented :(
- Connection Settings
- Currently only two connection configurators implemented:
- predefined - Offers to select a connection from the provided application config file.
- custom - Offers to manually enter a custom connection string
- more to come soon (MsSql, MsSqlCE, etc.)
- Test-Connection not yet implemented, but will follow soon.