= Virtuoso Client ADO.NET 3.5 (and later) Data Provider = The Virtuoso Client ADO.NET 3.5 (and later) Data Provider, compatible with Entity Frameworks and Visual Studio 2008 (and later), provides access to all Virtuoso-accessible data (SQL, XML, and RDF). With VOS (the Open Source variant of Virtuoso), this access is limited to data stored directly within the Virtuoso DB; with Commercial Editions (Personal, Enterprise, Cluster, etc.), this access is extended to any external data objects (Tables, Views, Procedures) which have been linked into Virtuoso. (External connections are made through ODBC and/or ODBC-to-JDBC Bridges.) Known-compatible external data sources include Firebird, IBM DB2, IBM Informix, Ingres, Microsoft SQL Server, MySQL, Oracle, PostgreSQL, Progress, and Sybase. The commercial builds of this provider are freely licensed for use against any Virtuoso Server, whether that Server instance is Commercial or Open Source. ==Benefits== It equips Microsoft .NET based applications, development environments, and programming languages with conceptual entity-based access to native and heterogeneous data sources. ==Features== * ADO.NET 3.5 compliance * .NET Entity Frameworks compatibility * Full integration with Visual Studio 2008 * ADO.NET Data Services compatibility * LINQ to Entities compatibility * High-Performance & Scalability * High Security * Support for Native and 3rd party RDBMS engines and Web Services * Tested against all major .NET applications and development environments ==How Do I Use It?== ===Installation=== The Virtuoso Client ADO.NET Provider is part of the Virtuoso Client Connectivity Kit. # If a target Virtuoso Server doesn't yet exist on the network, start by [[VirtADOClientServInstall|installing a Virtuoso Server]].%BR% # Given an active target Virtuoso Server, accessible from the client via TCP/IP, the [[VirtADOClientInstall|Client Connectivity Kit]] is all you need to install on the client host.%BR% Note: The bitness of the Virtuoso Client ADO.NET Provider must match the bitness of the ADO.NET client application(s), and the bitness of the Virtuoso Universal Server must match the bitness of any ODBC Drivers to which it will connect. The Virtuoso Client ADO.NET Provider need not match the bitness of its target Virtuoso Universal Server(s). Thus, you may need to install both 32-bit and 64-bit Virtuoso Client components, but will only need one Virtuoso Universal Server installation, which may be of either bitness. ===Sample Walk through Applications=== * [[VirtEntityFrameworkSchoolDbWinFormApp|Using Visual Studio 2008 to Build an Entity Frameworks based Windows Form Application]] * [[VirtUsingMsAdoNetDataServicesWithVirtuoso|Using Visual Studio 2008 to Build an ADO.NET Data Services based Application]] == Using Entity Frameworks, ADO.NET, and the Virtuoso Virtual Database Engine == Virtuoso's built-in virtual database engine enables it to act as bridge from Entity Frameworks & ADO.NET based client applications to data sources that would not otherwise be compatible with Entity Frameworks. You simply link external data objects (TABLEs, VIEWs, and/or PROCEDURESs) into Virtuoso, using the browser-based Conductor UI or programmatically using SQL extensions. Once the external data objects are linked/attached, they inherit the functionality of Virtuoso, and thus complete compatibility with Entity Frameworks and ADO.NET 3.5. === DBMS-Specific Instructions for Remote Objects === See these pages for instructions to use Virtuoso and Entity Frameworks to access Schema Objects in... * [[VirtDB2EntityFrameworkUsage| IBM DB2 Data Sources]] * [[VirtInformixEntityFrameworkUsage| IBM Informix Data Sources]] * [[VirtIngresEntityFrameworkUsage| Ingres Data Sources]] * [[VirtMSSQLServerEntityFrameworkUsage| Microsoft SQL Server Data Sources]] * [[VirtMySQLEntityFrameworkUsage| MySQL Data Sources]] * [[VirtOracleEntityFrameworkUsage| Oracle Data Sources]] * [[VirtPostgresEntityFrameworkUsage| PostgreSQL Data Sources]] * [[VirtProgressEntityFrameworkUsage| Progress/OpenEdge Data Sources]] * [[VirtSybaseEntityFrameworkUsage| Sybase Data Sources]] * [[VirtODBCEntityFrameworkUsage| Other ODBC-accessible Data Sources]] * [[VirtOJDBCEntityFrameworkUsage| Other JDBC-accessible Data Sources]]