EntitySpaces
Encyclopedia
EntitySpaces is an object-relational mapping
tool, whose architecture can be used when writing an ASP.NET
, .NET Framework
or .NET Compact Framework
application. The architecture is provider independent, allowing developers to run the same binary code against any of the supported databases. EntitySpaces works with both C# and VB.NET and uses no reflection and no XML files.
Although EntitySpaces targets both ASP.NET and Windows.Forms projects, DotNetNuke
module developers can use the architecture as an alternative to the DotNetNuke
DAL. Many of the features listed below, including important ones like transactions, are not available when using the DotNetNuke
DAL API.
The dOOdads architecture is written natively in both C# and VB.NET. The dOOdads .NET architecture also comes with MyGeneration templates that generate native C# or VB.NET dOOdad classes.
The EntitySpaces binaries are written in C#. Templates are available to generate both C# and VB.NET concrete and abstract classes, so EntitySpaces is fully supported for both languages, but native VB.NET binaries are not provided.
If you need to delete all of the records from a table, you use the MarkAllAsDeleted method as follows:
Object-relational mapping
Object-relational mapping in computer software is a programming technique for converting data between incompatible type systems in object-oriented programming languages. This creates, in effect, a "virtual object database" that can be used from within the programming language...
tool, whose architecture can be used when writing an ASP.NET
ASP.NET
ASP.NET is a Web application framework developed and marketed by Microsoft to allow programmers to build dynamic Web sites, Web applications and Web services. It was first released in January 2002 with version 1.0 of the .NET Framework, and is the successor to Microsoft's Active Server Pages ...
, .NET Framework
.NET Framework
The .NET Framework is a software framework that runs primarily on Microsoft Windows. It includes a large library and supports several programming languages which allows language interoperability...
or .NET Compact Framework
.NET Compact Framework
The Microsoft .NET Compact Framework is a version of the .NET Framework that is designed to run on resource constrained mobile/embedded devices such as personal digital assistants , mobile phones, factory controllers, set-top boxes, etc...
application. The architecture is provider independent, allowing developers to run the same binary code against any of the supported databases. EntitySpaces works with both C# and VB.NET and uses no reflection and no XML files.
Although EntitySpaces targets both ASP.NET and Windows.Forms projects, DotNetNuke
DotNetNuke
DotNetNuke is an open source web content management system based on Microsoft .NET technology.DotNetNuke was written in VB.NET, though the developer has shifted to C# since version 6.0. It is distributed under both a Community Edition BSD-style license and commercial proprietary licenses as the...
module developers can use the architecture as an alternative to the DotNetNuke
DotNetNuke
DotNetNuke is an open source web content management system based on Microsoft .NET technology.DotNetNuke was written in VB.NET, though the developer has shifted to C# since version 6.0. It is distributed under both a Community Edition BSD-style license and commercial proprietary licenses as the...
DAL. Many of the features listed below, including important ones like transactions, are not available when using the DotNetNuke
DotNetNuke
DotNetNuke is an open source web content management system based on Microsoft .NET technology.DotNetNuke was written in VB.NET, though the developer has shifted to C# since version 6.0. It is distributed under both a Community Edition BSD-style license and commercial proprietary licenses as the...
DAL API.
EntitySpaces, LLC
On January 18, 2006 a filing was made for the formation of "EntitySpaces, LLC", a limited liability company. On January 23, 2006 EntitySpaces, LLC officially became a legal entity. In February, EntitySpaces, LLC put together a commercial offering for the EntitySpaces .NET architecture.Doodads
The dOOdads .NET Architecture was created by Mike Griffin and, in many ways, is the progenitor of EntitySpaces. During the dOOdads architecture development and evolution, a lot was learned from the community, much of which has made its way into EntitySpaces.The dOOdads architecture is written natively in both C# and VB.NET. The dOOdads .NET architecture also comes with MyGeneration templates that generate native C# or VB.NET dOOdad classes.
The EntitySpaces binaries are written in C#. Templates are available to generate both C# and VB.NET concrete and abstract classes, so EntitySpaces is fully supported for both languages, but native VB.NET binaries are not provided.
Providers Available
- Microsoft SQL ServerMicrosoft SQL ServerMicrosoft SQL Server is a relational database server, developed by Microsoft: It is a software product whose primary function is to store and retrieve data as requested by other software applications, be it those on the same computer or those running on another computer across a network...
/ SQL CE - Microsoft SQL Azure
- Microsoft AccessMicrosoft AccessMicrosoft Office Access, previously known as Microsoft Access, is a relational database management system from Microsoft that combines the relational Microsoft Jet Database Engine with a graphical user interface and software-development tools. It is a member of the Microsoft Office suite of...
- OracleOracle DatabaseThe Oracle Database is an object-relational database management system produced and marketed by Oracle Corporation....
- MySQLMySQLMySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...
- Sybase SQL Anywhere
- PostgreSQLPostgreSQLPostgreSQL, often simply Postgres, is an object-relational database management system available for many platforms including Linux, FreeBSD, Solaris, MS Windows and Mac OS X. It is released under the PostgreSQL License, which is an MIT-style license, and is thus free and open source software...
- SQLiteSQLiteSQLite is an ACID-compliant embedded relational database management system contained in a relatively small C programming library. The source code for SQLite is in the public domain and implements most of the SQL standard...
- EffiProz (.NET & ASP.NET)
- VistaDB
EntitySpaces Features
Feature | Description | |
---|---|---|
Mono Support | Runs MySQL and VistaDB under Mono. | |
Compact Framework Support | In version 1.6.0 and onwards, EntitySpaces incorporated full support for Microsoft's .NET Compact Framework .NET Compact Framework The Microsoft .NET Compact Framework is a version of the .NET Framework that is designed to run on resource constrained mobile/embedded devices such as personal digital assistants , mobile phones, factory controllers, set-top boxes, etc... , the incorporatation SQL CE and VistaDB Database support for Mobile/CE applications. |
|
Medium Trust Support | Allows the use of zero reflection through the use of a Medium Trust Loader, and works in any environment. | |
Design Time Data Binding | Has design time data binding support for grids, detail forms, and other controls in ASP.NET ASP.NET ASP.NET is a Web application framework developed and marketed by Microsoft to allow programmers to build dynamic Web sites, Web applications and Web services. It was first released in January 2002 with version 1.0 of the .NET Framework, and is the successor to Microsoft's Active Server Pages ... . |
|
Hierarchical Data Models | The EntitySpaces Hierarchical Template uses the foreign keys in a database to automatically build the hierarchical object model. | |
Dynamic Query API | Straightforward syntax for generating outputs with the power of SQL without the need for SQL Views or queries. | |
Binary and XML Serialization | Proxy Stubs can be used to serialize and deserialize data on either side of a Web Service. | |
Data Provider Independence | Provider independence allows the database to be switched to a different provider at run-time. | |
Two Different Transaction Models | You can use ADO.NET connection-based transactions or COM+ distributed transactions. | |
Saving via Stored Procedures or Dynamic SQL | ||
Generated from your Database Schema | Generates required classes for managing a database using MyGeneration. | |
No XML mapping files | ||
LINQ Support for Collections | ||
Regenerate Without Losing Custom Business Logic | Custom classes are partial classes on the generated classes and are never overwritten. | |
Admin Grid Template Suite for ASP.NET ASP.NET ASP.NET is a Web application framework developed and marketed by Microsoft to allow programmers to build dynamic Web sites, Web applications and Web services. It was first released in January 2002 with version 1.0 of the .NET Framework, and is the successor to Microsoft's Active Server Pages ... |
Generates maintenance pages for a database. The template allows sorting, searching, paging, editing, and more. | |
Admin Grid Template Suite for DotNetNuke | Generates user controls contained in a loader to be loaded in a DotNetNuke module. | |
Loading a Collection
This sample loads all Employees in the database.Querying a Collection
This sample loads all Employees whose last name starts with “Smi”.Saving a Collection
Here the Employees are being transferred to Indianapolis. You never call Save on the single entity when it lives in a collection. Save will commit all modified, added, and deleted rows.Adding new records through a Collection
Here two new Employees are being added and saved.Deleting a record through a Collection
This example demonstrates the use of FindByPrimaryKey to locate a particular Employee in the collection, then marks it as deleted, and finally saves the collection.If you need to delete all of the records from a table, you use the MarkAllAsDeleted method as follows: