|
DataObjects.NET is a persistence and object-relational mapping framework for the Microsoft .NET Framework. It allows the developer to define the business logic (persistent objects) directly in one of the .NET languages like C#. The persistent objects can be retrieved by LINQ queries. Persistent data can be stored in SQL Servers or in even simpler DBMS which only provide simple indexing operations. In contrast to many other ORM frameworks the database model is generated and maintained automatically. == Persistence and mapping == Application development with DataObjects.NET follows the domain-driven design principle. The model (business logic) can be declared directly and completely in source code using attributes. Even the migration and update logic from older model versions is declared this way. Because the complete model is expressed in standard .NET source code DataObjects.NET integrates seamlessly in revision control and visual class design tools. This code sample declares a persistent Person class with a Name field:Unlike NHibernate DataObjects.net does not need a declared mapping to some kind of database. Instead it generates the needed tables and columns on the database itself. To do this it uses this metadata (the model) to create and modify the database schema on the underlying SQL Server or other DBMS. This reduces the development time and maintenance effort. It is also possible to use existing (legacy) data in a heterogeneous manner. The persistent classes can be used like every other class to create and modify persistent objects with the new operator and by assigning same data to properties. Due to the use of session scopes and transaction scopes these transactional modifications are ACID. Because these persistent classes do not use methods like session.Save(person) some other mechanism must come into play to store the data. DataObjects.NET uses aspect-oriented programming to inject the load/save mechanisms in the classes. The PostSharp framework is used to inject the policies for persistence.The persistence layer is completely transparent and does performance acceleration like lazy loading and caching behind the scenes. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「DataObjects.NET」の詳細全文を読む スポンサード リンク
|