Skip Headers
Oracle® Data Provider for .NET Developer's Guide
11g Release 2 (11.2.0.4)

E23174-03
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Master Index
Master Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

What's New in Oracle Data Provider for .NET?

This section describes new features in Oracle Data Provider for .NET and provides references to additional information. New features information from previous releases is also retained to help those users migrating to the current release.

The following sections describe the new features in Oracle Data Provider for .NET:

New Features in Oracle Data Provider for .NET Release 11.2.0.3

Oracle Data Provider for .NET release 11.2.0.3 includes the following:

  • ADO.NET Entity Framework and LINQ to Entities Support

    ODP.NET now includes support for the ADO.NET Entity Framework and LINQ to Entities. Entity Framework is a framework for providing object-relational mapping service on data models. Entity Framework addresses the impedance mismatch between the relational database format and the client's preferred object format. Language Integrated Query (LINQ) defines a set of operators that can be used to query, project, and filter data in arrays, enumerable classes, XML, relational databases, and other data sources. One form of LINQ, LINQ to Entities, allows querying of Entity Framework data sources. ODP.NET supports Entity Framework such that the Oracle database can participate in object-relational modeling and LINQ to Entities queries.

    Entity Framework and LINQ provides productivity benefits for the .NET developer. It abstracts the database's data model from the application's data model. Working with object-relational data becomes easier with Entity Framework's tools. Oracle's integration with Entity Framework and LINQ enables Oracle .NET developers to take advantage of all these productivity benefits.

    See "ADO.NET Entity Framework and LINQ to Entities" for more information on ODP.NET support for the ADO.NET Entity Framework and LINQ to Entities.

  • WCF Data Services and OData

    Windows Communication Foundation (WCF) Data Services enable developers to create services that use the Open Data Protocol (OData) to expose and consume data over the internet by using the semantics of representational state transfer (REST). OData exposes data as resources that are addressable by URIs. OData uses Entity Data Model conventions to expose resources as sets of entities that are related by associations. ODP.NET supports Entity Framework, and can expose its data through OData and WCF Data Services.

    WCF Data Services and OData facilitate creating flexible data services from any data source and naturally integrating them with the Web. All data sources, including Oracle databases, can be used by the same data sharing standard making data exchange more interoperable.

  • Implicit REF CURSOR Parameter Binding

    ODP.NET can bind REF CURSOR parameters for stored procedures without binding them explicitly. To do so, the application must provide the REF CURSOR metadata as part of the .NET configuration file. This feature allows Entity Framework Function Import to call Oracle stored procedures and return REF CURSOR result sets. ODP.NET can also update the database's data with a DataSet or DataTable obtained through a REF CURSOR.

    In Entity Framework, result set parameters are generally not declared. By supporting the implicit REF CURSOR parameter, ODP.NET more closely integrates with typical Entity Framework usage scenarios.

    See "Implicit REF CURSOR Binding" for detailed information on implicit REF CURSOR parameter binding.

New Features in Oracle Data Provider for .NET Release 11.2.0.2

Oracle Data Provider for .NET release 11.2.0.2 includes the following:

  • 64-bit ODP.NET XCopy for Windows x64

    Now available for Windows x64 systems, ODP.NET XCopy provides system administrators with a smaller client install size than the standard ODP.NET client, and is easier to configure. ODP.NET XCopy simplifies embedding ODP.NET in customized deployment packages.

  • TimesTen In-Memory Database Support

    Oracle Data Provider for .NET enables fast data access for any .NET application, such as C# .NET, Visual Basic .NET, and ASP.NET, to TimesTen In-memory databases. ODP.NET support for TimesTen includes the classes, enumerations, interfaces, delegates and structures of the Oracle.DataAccess.Client and Oracle.DataAccess.Types namespaces. ODP.NET supports TimesTen Release 11.2.1.6.1 or later on Microsoft Windows 32-bit and 64-bit platforms. TimesTen can be used with .NET Framework 2.0, 3.0, 3.5, and 4 with Microsoft Visual Studio 2005 or later.

    See Also:

    The latest TimesTen In-Memory Database documentation and resources can be accessed from:

    http://www.oracle.com/technetwork/database/timesten/index.html

New Features in Oracle Data Provider for .NET Release 11.2.0.1.2

Oracle Data Provider for .NET release 11.2.0.1.2 includes the following:

  • Support for Microsoft .NET Framework 4

    ODP.NET for .NET Framework 4 supports .NET Framework 4 and the .NET Framework 4 Client Profile.

New Features in Oracle Data Provider for .NET Release 11.2

Oracle Data Provider for .NET release 11.2 includes the following:

  • End-to-End Tracing: ClientInfo Property

    ODP.NET now supports the ClientInfo write-only property, in addition to the ActionName, ClientId, and ModuleName properties, on the OracleConnection object. This property specifies the client information for the connection.

    The ClientInfo property is an end-to-end tracing attribute that can be set on the client or middle tier. This attribute is propagated to the database server whenever the next server round-trip happens. This reduces the added overhead associated with an independent database round trip. Using the ClientInfo property is helpful in tracking database user activities and debugging applications.

  • Edition-Based Redefinition

    Edition-based redefinition enables you to upgrade the database component of an application even while the .NET application is being used. This minimizes or eliminates downtime for the application.

New Features in Oracle Data Provider for .NET Release 11.1.0.7.20

Oracle Data Provider for .NET release 11.1.0.7.20 includes the following:

  • Self-Tuning for Applications

    Based on run-time sampling, ODP.NET dynamically adjusts statement cache size to provide better application performance. Self-tuning also takes into account memory usage on the client machine in order to prevent excessive memory usage. Self-tuning improves ODP.NET performance, reduces network usage, and decreases server CPU and client CPU activity.

    See Also:

    "Self-Tuning"
  • Faster Data Retrieval and Less Memory Usage

    Retrieving data using OracleDataReader or populating a DataSet from an OracleDataAdapter is now faster.

    ODP.NET reuses the same fetch array buffer for statements executed non-concurrently, saving on memory usage. The fetch array buffer stores data retrieved from the database.

    No code changes are necessary to use these features. These features provide better performance and scalability for ODP.NET applications.

  • Oracle Streams Advanced Queuing Support

    ODP.NET supports access to Oracle Streams Advanced Queuing (AQ). AQ provides database-integrated message queuing functionality to store messages persistently, propagate messages between queues on different machines and databases, and transmit messages using Oracle NET services, HTTP, HTTPS and SMTP.

    ODP.NET can access all the operational featuers of AQ, such as enqueue, dequeue, listen and notification. Oracle Developer Tools for Visual Studio can administer and manage AQ resources.

  • Promotable Local Transaction Support

    Distributed transactions require the orchestration of application, transaction coordinator, and multiple databases. Local transactions only require an application and a single resource manager, or database. Local transactions have less of an overhead when compared to distributed transactions.

    It may be difficult to determine whether a transaction will be local or distributed at design time. Developers are forced to design applications for distributed transactions, even if local transactions are used most of the time. This situation leads to more resource usage than necessary at run time.

    Promotable local transactions allow all transactions to remain local until more than one database is brought into the transaction. At this point, the transaction is promoted to a distributed transaction so that it can be managed by the transaction coordinator. This provides a better utilization of system resources. This feature is supported with Oracle Database 11g release 1 (11.1.0.7) and higher.

  • ODP.NET Security Enhancements

    ODP.NET makes use of the OraclePermission class to enforce imperative security. This helps ensure that a user or application has a security level adequate for accessing data.

  • Callbacks for HA Event Notifications

    ODP.NET can register for Oracle High Availability (HA) events when "ha events=true" is specified in the connection string. ODP.NET is then able to receive notifications on which database, service, host, or instance has gone down or come up. .NET developers can register a callback with ODP.NET to notify the application when one of these events occurs and subsequently execute an event handler, as needed.

  • Database Startup and Shutdown Operations

    Users with database administrator privileges can use the OracleDatabase class to startup or shutdown a database instance.

New Features in Oracle Data Provider for .NET Release 11.1.0.6.20

Oracle Data Provider for .NET release 11.1.0.6.20 includes the following:

  • 32-bit ODP.NET XCopy

    Oracle XCopy provides system administrators with an ODP.NET client that is smaller in disk size than the standard ODP.NET client and is easily configurable. Oracle XCopy makes embedding ODP.NET in customized deployment packages much simpler.

    See Also:

    "XCopy"
  • Support for Oracle User-Defined Types

    ODP.NET has the ability to represent Oracle UDTs defined in the database as custom types in .NET applications.

  • Bulk Copy Operations

    ODP.NET supports the Bulk Copy operations to load a large amount of data efficiently.

  • Additional Connection Pool Optimizations for Oracle Real Application Clusters (Oracle RAC) and Oracle Data Guard

    ODP.NET now cleans up the connection pool when the database down event is received from Oracle RAC or Oracle Data Guard. This is in addition to the events that ODP.NET already cleaned up the connection pool for: node down, service member down, and service down events.

  • Windows-Authenticated User Connection Pooling

    Operating system-authenticated connections can now be managed as part of ODP.NET connection pools

  • Connection Pool Performance Counters

    ODP.NET publishes performance counters for connection pooling, which can be viewed using the Windows Performance Monitor.

  • End-to-End Tracing Attribute Support

    ODP.NET supports the ActionName, ClientId, ClientInfo, and ModuleName write-only properties on the OracleConnection object. These properties correspond to end-to-end tracing attributes that can be set on the client or middle-tier, and propagated to the database server whenever the next server round-trip happens. This reduces the added overhead associated with an independent database round trip. Using these attributes is helpful in tracking database user activities and debugging applications.

New Features in Oracle Data Provider for .NET Release 11.1

Oracle Data Provider for .NET release 11.1 includes the following:

  • Performance Enhancements

    The following performance enhancements have been made:

    • Improved Parameter Context Caching

      This release enhances the existing caching infrastructure to cache ODP.NET parameter contexts. This enhancement is independent of database version and it is available for all the supported database versions. This feature provides significant performance improvement for the applications that execute the same statement repeatedly.

      This enhancement is transparent to the developer. No code changes are needed to use this feature.

    • Efficient LOB Retrieval with LOBS or SecureFiles

      When using LOBS or SecureFiles, this release improves the performance of small-sized LOB retrieval by reducing the number of round-trips to the database. SecureFiles is available with Oracle 11g release 1 or later database versions.

      This enhancement is transparent to the developer. No code changes are needed to use this feature.

New Features in Oracle Data Provider for .NET Release 10.2.0.4

Oracle Data Provider for .NET release 10.2.0.4 includes the following:

  • ODP.NET Configuration

    Developers can now configure ODP.NET using configuration files, including application config, web.config, or machine.config.

    Settings in the machine.config override the registry settings.The settings in the application config or the web.config override the values in the machine.config.

New Features in Oracle Data Provider for .NET Release 10.2.0.3

Oracle Data Provider for .NET release 10.2.0.3 includes the following:

  • 64-bit ODP.NET for Windows x64 and Windows Itanium

    ODP.NET natively supports the 64-bit .NET Framework for both 64-bit Windows platforms:

    • Windows x64 for AMD64 and Intel EM64T processors

    • 64-bit Windows for Intel Itanium

    64-bit systems allow for more scalable and better performing ODP.NET applications.

  • Configuring FetchSize Through the Windows Registry

    This feature enables applications to specify the default result set fetch size through the registry.

  • Local Transaction Support for System.Transactions

    This feature enables System.Transactions to use local transactions rather than distributed transactions. This can be specified either through the registry or through a connection string attribute.

New Features in Oracle Data Provider for .NET Release 10.2.0.2

Oracle Data Provider for .NET release 10.2.0.2 includes the following:

  • Support for Microsoft ADO.NET 2.0, including.

    • Provider Factory Classes and Base Classes

      Simplifies data access code to access multiple data sources with a provider generic API.

    • Connection String Builder

      Makes creating connections strings less error-prone and easier to manage.

    • Data Source Enumerator

      Enables the application to generically obtain a collection of the Oracle data sources that the application can connect to.

    • Support for Schema Discovery

      Permits application developers to find and return database schema information, such as tables, columns, and stored procedures.

    • System.Transactions Support

      ODP.NET supports implicit and explicit transactions using the System.Transactions namespace models.

    • Batch Processing Support

      Enables batch processing when the OracleDataAdapter.Update method is called.

New Features in Oracle Data Provider for .NET Release 10.2

Oracle Data Provider for .NET release 10.2 includes the following:

  • Server-Side Features

    Server-side features for Oracle Data Provider for .NET provide data access from .NET stored procedures. Such procedures are enabled by Oracle Database Extensions for .NET, a new feature included with Oracle database on Windows.

  • Support for Client Identifier

    Oracle Data Provider for .NET exposes the OracleConnection.ClientId property, thus providing support for Oracle Virtual Private Database (VPD) and application context. Client identifier makes configuring VPD simpler for the developer.

  • Connection Pool Optimizations for Oracle Real Application Clusters (Oracle RAC)

    Oracle Data Provider for .NET optimizes connection pooling for Oracle RAC databases by balancing work requests across Oracle RAC instances, based on the load balancing advisory and service goal. Furthermore, the ODP.NET connection pool can be enabled to proactively free resources associated with connections that have been severed due to a down Oracle RAC service, instance, or node.

  • Database Change Notification Support

    Oracle Data Provider for .NET provides a notification framework that supports Continuous Query Notification. This enables applications to receive notifications when there is a change in a query result set or a change in the state of the database.

  • Connection Pooling Management

    Oracle Data Provider for .NET connection pool management provides explicit connection pool control to ODP.NET applications. Applications can explicitly clear connections in a connection pool or all the connection pools.

  • Better LOB performance and functionality with Oracle Database 10g release 2 (10.2) and later

  • Support for IN and IN/OUT REF CURSOR Objects

    This feature enables applications to retrieve REF Cursors from a PL/SQL procedure or function and pass them to another stored procedure or function.

New Features in Oracle Data Provider for .NET Release 10.1.0.3

Oracle Data Provider for .NET release 10.1.0.3 includes the following:

  • Statement Caching

    This feature provides and manages a cache of statements for each session. The developer can control which statements are cached and how many. This improves performance and scalability.

  • .NET Framework 1.1 Enhancements

    These enhancements expose new ADO.NET functionality that was introduced in Microsoft .NET Framework 1.1.

  • Support for Command Cancellation and Timeout

    These two new features relate to command cancellation. The CommandTimeout feature cancels the execution of a command when a specified amount of time elapses after the execution, while the Cancel method can be called explicitly by the application to terminate the execution of a command.

  • DeriveParameters Method

    This method populates the parameter collection for the OracleCommand that represents a stored procedure or function by querying the database for the parameter information.

  • LOB Retrieval Enhancement

    Entire LOB column data can be retrieved even if the select list does not contain a primary key, ROWID, or unique key. This enhancement is available by setting the InitialLOBFetchSize property value to -1 for CLOB and BLOB objects.

  • LONG Retrieval Enhancement

    Entire LONG column data can be retrieved even if the select list does not contain a primary key, ROWID, or unique key. This enhancement is available by setting the InitialLONGFetchSize property value to -1.

New Features in Oracle Data Provider for .NET Release 10.1

Oracle Data Provider for .NET release 10.1 includes the following:

  • Support for Oracle Grids

    ODP.NET is grid-enabled, allowing developers to take advantage of Oracle Database Grid support without having to make changes to their application code.

  • Support for BINARY_FLOAT and BINARY_DOUBLE data types in the database

    ODP.NET supports the new database native types BINARY_FLOAT and BINARY_DOUBLE

  • Support for Multiple Homes

    ODP.NET can be installed in Multiple Oracle Homes.

    In order to make multiple homes available, some of the ODP.NET files include a version number, and the use of a HOMEID is required.

  • Support for Schema-Based XMLType in the Database

    ODP.NET supports the native schema-based XMLType.

New Features in Oracle Data Provider for .NET Release 9.2.0.4

Oracle Data Provider for .NET release 9.2.0.4, which was released on Oracle Technology Network (OTN), included the following:

  • XML Support in ODP.NET

    With XML support, ODP.NET can now:

    • Store XML data natively in the database as Oracle Database native type, XMLType.

    • Access relational and object-relational data as XML data from an Oracle Database instance into a Microsoft .NET environment, process the XML using the Microsoft .NET Framework.

    • Save changes to the database using XML data.

  • Support for PL/SQL Associative Array Binding

    ODP.NET supports PL/SQL Associative Array (formerly known as PL/SQL Index-By Tables) binding.

    An application can bind an OracleParameter, as a PL/SQL Associative Array, to a PL/SQL stored procedure using OracleParameter properties.

  • Support for InitialLOBFetchSize property on OracleCommand and OracleDataReader objects