Data Abstract for Delphi | RemObjects Software

Data Abstract for .NET

For two decades now, Data Abstract has been the leading framework for secure, scalable multi-tier database access for .NET developers.

First released in 2005, Data Abstract for .NET was the second platform in the Data Abstract family – and the first product (besides Oxygene itself) ever written entirely in Oxygene. Since then it has been relied on by thousands of .NET developers every day all across the globe, from single-developer shops all the way to Fortune 500 companies.

Whether you write your code in C#, VB.NET, or one of our own Elements languages – Oxygene, Mercury, Hydrogene C# or Silver Swift – Data Abstract integrates seamlessly into your Visual Studio workflow, and supports both the modern .NET runtime and classic .NET Framework, on Windows, Linux and macOS.

Less Clutter, with Schemas

Aren't you tired of having DataSet and DataTable definitions scattered across your project, hand-written SQL statements that are hard to maintain and test, and brittle ADO.NET code that breaks the moment your database changes?

Data Abstract does away with this with one powerful concept: The Schema.

Data Abstract for .NET in Visual Studio

In .NET, the Schema lives in a .daSchema file in your project, and contains all information about the data tables and commands your server exposes. It is backed by a powerful editor, the Schema Modeler, that lets you visually create, maintain and test your data access – right from within Visual Studio, or as a standalone tool on Mac.

Schema Modeler

Schema Modeler shows you both a live view into your database(s) and – shown above – the tables you have chosen to expose on your server. You can add and update tables in your schema easily via drag-and-drop.

You decide which tables and which fields will be visible to applications, whether they can be modified, and so on. You can even change the names as they will appear to client apps, to truly abstract (see what we did there?) the real database structure – more on that, below.

Strongly-Typed Table Definitions

Beyond loose DataTable access, Data Abstract for .NET lets you generate strongly-typed table definitions directly from your schema. Your tables become first-class C# or VB.NET classes, with proper field names, types, and full IntelliSense support – making your client code refactor-safe and a pleasure to write.

Combined with our DA LINQ provider, you can write strongly-typed, IDE-assisted queries against your schema, and Data Abstract will translate them into DA SQL on the wire and execute them safely against the middle tier.

Powered by ADO.NET

Behind the scenes, Data Abstract uses standard ADO.NET drivers to talk to your database, so virtually any database with an ADO.NET provider will work out of the box – Microsoft SQL Server, Oracle, PostgreSQL, MySQL, SQLite, and many more.

But your Schemas are 100% driver agnostic (and can even be 100% database agnostic, in most cases), making it really easy to switch databases or performance-test multiple options with a single click – without having to rewrite any of your client code.

See it in Action

See how easy it is to create your first Data Abstract Server, with virtually no code and component clutter, in our 8-minute introduction video:

View on RemObjects TV

DA SQL

SQL is the de-facto standard language for data queries, and DA SQL brings it to the client tier, without compromising data security and integrity.

DA SQL allows you to (entirely optionally, of course) write SQL statements client-side, to express simple and complex data queries. Unlike with other systems, this SQL will not be passed through directly to the back-end database, but it gets processed and run against the schema in the middle tier – preserving all the security and data integrity you have in place, and never allowing rogue requests from a client to bypass it to access data or make changes they are not allowed to.

Of course DA SQL can be used internally, but you can also (safely) expose it to your end-user, letting them craft their own dynamic queries on the fly.

Work Online and Offline

With Data Abstract's advanced Briefcase mode, your client applications remain functional, whether they have a connection to the network or not. Changes made locally can be persisted – even across application restarts – and applied at a later time, when the server becomes reachable again. And this entire process can be transparent to the end-user if so desired.

And sophisticated reconciliation support makes it easy to deal with the rare case where two users might have tried to apply conflicting updates – including a ready-made Reconciliation dialog your application can use as is, or build upon.

Briefcase client

Abstracting the Database Structure

One of the powerful benefits of Data Abstracts Schema model is that it allows you to fully abstract what your actual database looks like from what the client applications will see and interact with. This can be helpful in many scenarios:

  • Maybe you have a legacy database with ugly names, such as the all too common ALL_CAPS_WITH_UNDERSCORES format many older databases use. You can pick prettier names in your Schema, and your client developers will never have to see the ugly names.

  • Maybe you have an old and a new database that use vastly different naming conventions, but you want to create one set of client apps that can talk to either.

  • Maybe you later want to make changes to names in the database, but not break existing clients. You can keep the old name in the schema mapped to the renamed fields or tables in the back-end.

  • Maybe you have multiple very different (but conceptually similar) databases, possibly provided by different customers, and maybe even using different database types. With Data Abstract, you can write one app, that sees one database structure, that can talk to any of them.

...and many other scenarios.

Compatible With Other Platforms

Data Abstract for .NET supports creating servers that run on Windows, Linux and macOS, as well as a wide variety of client applications – WPF, WinForms, ASP.NET Core, console apps, and more.

What's more, native Data Abstract client libraries are available for all major non-.NET development platforms: Delphi and C++Builder, Apple's platforms using Xcode with Objective-C and Swift or Elements, Java/Android, as well as JavaScript and WebAssembly.

Data Abstract was also designed from the ground up to be wire-compatible with non-DA clients, and data from a Data Abstract server can be accessed using (sometimes less efficient and capable) open standards such as OData and REST, if needed.

Relativity Server

Data Abstract for .NET comes with the ability to build your own middle-tier server from scratch, and add all the custom functionality to it that you need. But in many cases, DA and the schema provide everything out of the box, and there is no need for any custom code in the server, at all.

For these cases, there is Relativity Server.

Relativity Server is a pre-built server application that you can deploy royalty-free to host any number of independent Data Abstract middle-tier servers, each with any number of schemas. It provides all the functionality of a custom server, without the need to build and maintain your own server project.

You can think of Relativity Server being to your middle-tier what SQL Server, Oracle, or any other database system is to your database: you just provide the actual data, you're not building your own database engine.

And of course, since Relativity Server is based on DA, you can always migrate from it to a custom server later, if you need to add custom functionality. Or migrate a custom server to Relativity, if you don't.

Try Data Abstract Now

Give Data Abstract for .NET a try for 30 days – free and without any commitment.

You can download the trial installer from this site, below.

 

Get Your Copy Now

Join thousands of .NET developers by taking your data access to the next level with Data Abstract for .NET, at only $1499 for a yearly license. Data Abstract is also part of the full Suite Subscriptions, or for multiple platforms.

Site licenses, volume discounts, and packages including all Data Abstract platforms are available, as well.

To stay in the loop, follow @RemObjects on Twitter.

And discuss the product or get support, in our Data Abstract forum on RemObjects Talk.

This includes full technical support during your trial period as well, of course!

Close

How can we help?

Your Name:
Your Email Address:
 
Your Question:
Close

Thank you!

Your message has been sent, and someone will get back to you soon, usually within a business day.

For technical or support questions, please also check out our RemObjects Talk support forum, as well as out other Support Options.