DataObjects.Net is the ideal object-relational mapper (ORM) and business logic layer (BLL) development framework for modern .NET projects that:
- Wish to leverage all the best language features and technologies that .NET has to offer
- Have non-trivial domain models with deep inheritance and composite objects
- Prefer code-first, test-driven development
- Cannot settle for less than excellent performance
- Want a solution that scales easily
Release notes for: DataObjects.Net 6.0.4
[main] Session.SelectStorageNode() marked as obsolete
[main] Removed obsolete static Session.Open() methods
[main] Domain.OpenSessionAsync() methods can only open a session to default storage node now
[main] Introduced StorageNode.OpenSession() and StorageNode.OpenSessionAsync() method sets to open sessions to the node
[main] Fixed issue when DirectPersistentAccessor.SetReferenceKey() was unable to set reference for saved Entities
[main] Hints which path became irrelevant during upgrade actions generation no longer cause error
[main] Fixed certain translation issues of interface members usage for non-perstent types initialization within queries
[main] Improved translation of certain subqueries used in LINQ
[main] Ported changes of DO 5.0 which were missing (from 5.0.18 up to 5.0.21)
[postgresql] Retuned support for DateTimeOffsets
[postgresql] Fixed issue when certain DateTimeOffsets operations result couldn't be used for parts extraction e.g. TotalMilliseconds
[bulkoperations] Addressed wrong table alias assignment issue for Bulk Update and Bulk Delete
6.0.4 22 Dec 2020 release notes
Release notes for: DataObjects.Net 5.0.23
Prefetch extension re-fetches EntitySet
main Fixed certain cases when temorary table might be created with incorrect columns count due to query optimization
5.0.23 03 Feb 2021 release notes
Release notes for: DataObjects.Net 4.6.9
main Fixed comparison of Keys
mysql Provider is no longer used recursive syntax for join
4.6.9 03 Jul 2015 release notes
Release notes for: DataObjects.Net 4.5.8
main Fixed invalid key comparison under certain conditions
main Fixed EntitySet caching invalid state within DisableSaveChanges() scope
main Fixed overflow when storing large TimeSpan values
main Fixed invalid default values for SessionConfiguration.DefaultIsolationLevel and SessionConfiguration.Options
main Fixed support for referencing connection strings in SessionConfiguration
mysql Fixed translation of bitwise operations
mysql Fixed translation of DateTime.DayOfWeek and DateTime.DayOfYear
4.5.8 30 Sep 2013 release notes
Deliver better solutions – faster
Business domains of arbitrary complexity can be easily modeled in DataObjects.Net. You get tons of must-have features for rapid application development such as transactional entities, lazy loading, change tracking, concurrency, validation, event notifications, N-level undo and much more right out of the box with every domain model you develop.
DataObjects.Net implements a blazing-fast LINQ provider that will satisfy even
the most complex, performance-critical
IQueryable use cases that
your demanding users can conceive!
Our fast and reliable support will make certain you cross the finish line with lots of time to spare. The community will eagerly share their success tips and tricks with you.
Pain-free project maintenance
DataObjects.Net brings high performance and great scalability to both the data
access layer (DAL) and the business logic layer (BLL).
Über-Batching Technology™ maintains the ideal conversation between
your application and data storage considerably decreasing the number of roundtrips
there; future queries along with flexible prefetching allows to solve issues
SELECT N+1” by a number of ways.
Automatic database schema upgrades and Ruby-on-Rails-like migrations significantly simplifies version-to-version upgrade process and will change how you think about deploying database changes!
Since DataObjects.Net 6 the ORM is open-source and licensed under MIT license. We placed it on GitHub so you have access to the source code and can use it freely without license buying*.
We also welcome users' contributions to the project. Have an improvement suggestion or even a new feature to integrate? Open as an issue on Github with detailed info what your commitment does and what benifits it delivers to the project. We will discuss and figure out the best way to make your contribution be part of future DataObjects.Net.
* DataObjects.Net 5 and DataObjects.Net 4.6 continue to have paid licenses and access to the sources. For pricing go here
DataObjects.Net is much more than an ORM, it will save you time and help you deliver a better product that is easier to maintain over time. What are you waiting for? Get started with DataObjects.Net.