Advantage Database Server
This article is relevant to entity models that utilize the deprecated Visual Studio integration of Telerik Data Access. The current documentation of the Data Access framework is available here.
Driver Installation
In order to use a database on an ADS remote server, you need to have the Advantage Data Provider installed on the client machine. The easiest and most convenient way to ensure that Telerik Data Access can use the driver is to install the Advantage.Data.Provider.dll into the global assembly cache (GAC). This can be done with the gacutil command from Microsoft .NET Framework SDK:
gacutil /i <complete_path>/Advantage.Data.Provider.dll
For e.g. gacutil /i "C:\Program Files\Extended Systems\Advantage 9.1\ado.net\2.0\Advantage.Data.Provider.dll"
Since the Advantage.Data.Provider.dll assembly needs some unmanaged code from the ace32.dll and axcws32.dll, the path must contain the directory that contains these dlls; otherwise the driver will throw the corresponding exception.
The "Advantage .NET Data Provider 9.1" is required and can be downloaded from the Advantage Database web site.
Telerik Data Access has been tested with the 9.1 and 10.0 versions of the ADS remote server for Microsoft .NET Framework 3.5.
Database Preparation
Since ADS works on table files, it is highly recommended to have a separate directory for each database created by Telerik Data Access, as the runtime generates commonly named tables (like voa_keygen), which would conflict when not separated into different directories. That is why the recommended style for a database name is:
<common part><databaseName><databaseName>.add
The common part is a logical path name that contains the <database_dir>, where database_dir is the logical directory used as the root directory for your database.
ADS requires that <common part> is a shared (exported) directory, even on a local machine. Which means that a UNC path of \<your machine name here><common part><databaseName> must be manually created by the user on a (possibly remote) machine.
Using "localhost" is not supported, and you need to use the Windows name of the servers machine.
The complete UNC path (without the server name) is needed as the database name, including the leading backslash.
If you need to encrypt your database, create an empty encrypted .add data dictionary with the ARC Advantage Data Architect and use the full path as the database name in the Telerik Data Access configuration. Telerik Data Access creates only unencrypted databases.
Currently only .add data dictionary databases are supported by Telerik Data Access as referential integrity constraints are required.
Limitations
The following limitations should be considered:
- Integrated security is currently not supported.
- Only .add data directory files are supported, not free tables.
- When the database schema is created/maintained by Telerik Data Access, the adssys user must be used.
- The directory part of the UNC path to the .add file is not created by Telerik Data Access.
- Certain values, most notably System.Int32.MinValue and System.Int16.MinValue, are not storable in an ADS database.