ADO.NET Provider for Microsoft Dataverse

Build 26.0.9655

Changelog

General Changes

DateVersionSourceCategoryTypeDescription
2026-05-2726.0.9643GeneralConnectionRemoved
  • Removed the deprecated ReplaceInvalidTypesWithNull connection property. Use the ReplaceInvalidValuesWithNull property instead.
2026-05-1226.0.9628Microsoft DataverseData ModelChanged
  • Changed the binary column data type to VARBINARY, increasing the column size to a maximum of 131 Mb.
2026-05-0726.0.9623GeneralData ModelAdded
  • Added the ColumnCapabilities column to the sys_tablecolumns system table. This column is a bit mask denoting the column's write capabilities.
2026-04-2826.0.9614ADO.NETConnectionAdded
  • Added the following functions to the driver class. If you pass these functions an exception with no error records, an InvalidArgumentException is thrown.
    • containsErrorSource: Returns true if the exception contains an error record for the provided source name, or false otherwise.
    • getErrorCodeFromSource: Returns the numeric error code from the error record with the given source, or -1 if there is no error record from that source.
    • containsErrorCode: Returns true if the exception contains an error record with the provided error code, or false otherwise.
    • findErrorProperty: Returns the value of the property with the given name, or null if no property with that name is defined.
    • formatErrorRecords: Returns a string containing all the exception's error records, including messages, codes, properties, and error locations.
2026-04-1526.0.9601GeneralQuery ExecChanged
  • String comparisons using GREATER, LESS, and CONTAINS operators are now case-insensitive by default.
2026-04-0126.0.9587ADO.NETAdded
  • Added support for EFCore 10.
2026-04-0126.0.9587Microsoft DataverseData ModelChanged
  • When IncludeLinkedColumns is enabled, additional "Linked" columns are exposed. Previously, these were described as foreign key references, but they represent entire related rows. These columns no longer return reference values.
2026-01-2825.0.9524Microsoft DataverseAdded
  • Added the CreateSchema stored procedure for the Entities and System schemas.
2026-01-1325.0.9509GeneralAdded
  • Added support for the REGEXP_REPLACE() string function.
2025-12-0525.0.9470GeneralAdded
  • Added support for the INSERT INTO SELECT statement, with driver-side execution for providers that do not support the operation natively.
2025-10-2825.0.9432Microsoft DataverseChanged
  • Created the ability to bind the OwnerId to a team ownerid in all tables that expose a relationship through the OwnerId column. Previously, OwnerId could only be bound to an individual ownerid. This expresses itself as follows:
    • In the System schema, in INSERT/UPDATE operations, we now support creating a relationship to either table by exposing a new column, ownerId_teams.
    • In the Entities schema, in INSERT/UPDATE operations, we now support creating a relationship to either table by exposing a new column, ownerid_owner_teams.
2025-10-0625.0.9410GeneralAdded
  • Support for parsing datetime formats using ".S" and ",S" for milliseconds and nanoseconds.
2025-09-1225.0.9386GeneralAdded
  • Added the IsInsertable, IsUpdateable, and IsDeleteable columns to the sys_tables table.
2025-09-1025.0.9384GeneralChanged
  • All columns in statically defined Views are now reported as read-only.
2025-09-0325.0.9377GeneralChanged
  • Corrected the behavior when IN criteria with NULL values are used in the projection part. It now returns NULL instead of 0. For example, "NULL IN (1,2)" returns "NULL".
2025-09-0125.0.9375GeneralAdded
  • Added support for using the CAST function with infinity values. This function can cast "inf" and "-inf" to DOUBLE, FLOAT, or REAL.
2025-08-2125.0.9364GeneralChanged
  • Report behavior change:
    • Fixed inconsistent string value comparisons in non-table queries.
    • For example, "SELECT 'A' = 'a'" previously returned false, but it now returns true.
2025-08-1325.0.9356GeneralChanged
  • Changed the maximum number of pages held in memory from 15 to 5 for the page providers to decrease heap usage.
2025-07-1825.0.9330Microsoft DataverseRemoved
  • Removed the OAuthGrantType property. The grant type is now set implicitly through the 'AuthScheme' property. For example, you can use the 'OAuthPassword' AuthScheme instead of AuthScheme=OAuth with OAuthGrantType=Password.
2025-07-0425.0.9316Microsoft DataverseRemoved
  • Removed the UseIdURL connection property because it has been deprecated.
2025-06-2525.0.9307GeneralRemoved
  • Removed the "ADLS Gen 1" value from the ConnectionType property.
2025-06-2025.0.9302GeneralAdded
  • Created the following functions:
    • TEXT_ENCODE: encodes a string into a different charset (UTF8 → UTF7 and returns a binary array as the result).
    • TEXT_DECODE: takes a binary array and decodes it back into a string when provided the charset.
    • BASE64_ENCODE: takes a binary array and encodes it as a base64 string (varchar).
    • BASE64_DECODE: takes a base 64-encoded string and decodes it into a binary array.
2025-06-1825.0.9300GeneralChanged
  • The internal code for exception handling has been refactored. Exception messages returned during certain error conditions may now have different wording or formatting.
2025-05-2925.0.9280ADO.NETChanged
  • We have improved our implementation of the ADO.NET DbDataReader.GetDataTypeName so that it now returns database data type names, such as varchar, tinyint, and datetime. Previously we returned the fully-qualified name of the column’s .NET type, in a format like "System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e".
2025-05-2725.0.9278ADO.NETRemoved
  • Removed support for the C# implementation of SQLite. Features that previously used this implementation by default, such as AutoCache and EF6 schema caching, now require the native SQLite driver.
2025-05-2725.0.9278GeneralRemoved
  • Removed the "Proprietary" enum option from ProxyAuthscheme.
2025-05-0925.0.9260Microsoft DataverseChanged
  • Inherited columns are now listed even if they are marked IsValidODataAttribute=false. This applies when the Schema connection property is set to "Entities".
2025-04-3025.0.9251Microsoft DataverseAdded
  • Added a new connection property, EntityTypes, to specify which entity types should be included in the metadata listing.
2025-02-1524.0.9177GeneralAdded
  • Added support for converting unsigned integer types to the nearest signed data type that has enough precision to hold the unsigned value.This is done for JDBC only because it does not have support for unsigned data types.
2025-01-1524.0.9146Microsoft DataverseAdded
  • Added the success output parameter to the CreateAssociations and RemoveAssociations stored procedures.
2024-12-0524.0.9105Microsoft DataverseAdded
  • Exposed the IncludeLookUpLogicalName connection property. This property was previously hidden and is inherited from D365.
2024-12-0224.0.9102Microsoft DataverseChanged
  • Fixed an issue where some write-only columns were reported as read-only in the Entities schema.
2024-11-2724.0.9097GeneralAdded
  • Added ThreadId to LogModule output. Logfile lines now include the Thread ID associated with the action being performed.
2024-10-0324.0.9042Microsoft DataverseChanged
  • Changed the default value for the ApiVersion connection property from 9.0 to 9.2.
2024-10-0124.0.9040Microsoft DataverseChanged
  • In the Entities schema, fixed an issue where some columns were not properly detected as readonly.
  • In the Entities schema, fixed an issue where some available columns weren't listed.
  • In the Entities schema, fixed an issue where some columns were not properly detected as primary keys.
2024-07-1124.0.8958Microsoft DataverseRemoved
  • Removed the remnants of the Tenant property, which was long ago renamed to AzureTenant. (Now there is only AzureTenant.)
2024-07-0924.0.8956Microsoft DataverseChanged
  • All filters are now handled client-side for the following tables: AadUsers in the System schema and AadUser in the Entities schema.
2024-06-2024.0.8937Microsoft DataverseChanged
  • Various table columns changed from BINARY to VARCHAR and marked as read-only.
2024-05-0924.0.8895GeneralChanged
  • The ROUND function previously did not accept negative precision values. That feature has now been restored.
2024-03-1523.0.8840GeneralAdded
  • Created a new SQL function called STRING_COMPARE that provides java's String.compare() ability to SQL queries. Returns a number representative of the compared value of two strings
2024-01-1823.0.8783ADO.NETAdded
  • Added support for EFCore 8.
2023-11-2923.0.8733GeneralChanged
  • The ROUND function doesn't accept the negative precision values anymore.
2023-11-2923.0.8733GeneralChanged
  • The returning types of the FDMonth, FDQuarter, FDWeek, LDMonth, LDQuarter, LDWeek functions are changed from Timestamp to Date.
  • The return type of the ABS function will be consistent with the parameter value type.
2023-11-2823.0.8732GeneralAdded
  • Added the HMACSHA256 formatter to allow for secrets to be decoded if it is in base64 format
2023-11-1523.0.8719ADO.NETChanged
  • NuGet license and icon are now embedded within the package itself, in compliance with the package authoring best practices.
2023-10-2423.0.8697Microsoft DataverseChanged
  • The default value for the hidden connection property IncludeReferenceColumn for the System schema has changed to false and the ParentReference column is no longer listed by default.
2023-07-2723.0.8608Microsoft DataverseAdded
  • Added the connection property IncludeFormattedValues when set to true, for each column an extra one is added to expose the formatted value. New columns will have "_display" postfix
2023-06-2023.0.8571GeneralAdded
  • Added the new sys_lastresultinfo system table.
2023-05-2523.0.8545Microsoft DataverseAdded
  • Added support for StateAttributeMetadata, StatusAttributeMetadata, StateAttributeOptions, StatusAttributeOptions views.
2023-04-2523.0.8515GeneralRemoved
  • Removed support for the SELECT INTO CSV statement. The core code doesn't support it anymore.
2023-04-1923.0.8509ADO.NETRemoved
  • Removed support for EFCore 3.1.
2023-04-1823.0.8508ADO.NETRemoved
  • Removed support for SSRS 2012
2023-04-1823.0.8508ADO.NETAdded
  • Added support for SSRS 2022.
2022-12-1422.0.8383GeneralChanged
  • Added the Default column to the sys_procedureparameters table.
2022-09-3022.0.8308GeneralChanged
  • Added the IsPath column to the sys_procedureparameters table.
2022-08-0122.0.8248Microsoft DataverseChanged
  • Changed the way the 'LocalizedLabels' structure is exposed in the PickList tables. It is now pushed as a JSON aggregate.
2022-06-0822.0.8194ADO.NETRemoved
  • Removed support for VS2010.
2022-05-2422.0.8179Microsoft DataverseChanged
  • Changed provider name to Microsoft Dataverse.
2022-05-1922.0.8174ADO.NETRemoved
  • Removed support for .NET 2.0.
2022-04-2722.0.8152ADO.NETRemoved
  • Removed support for EFCore 3.0 and EFCore5.0.
2021-09-0221.0.7915GeneralAdded
  • Added support for the STRING_SPLIT table-valued function in the CROSS APPLY clause.
2021-08-0721.0.7889GeneralChanged
  • Added the KeySeq column to the sys_foreignkeys table.
2021-08-0621.0.7888GeneralChanged
  • Added the new sys_primarykeys system table.
2021-07-2321.0.7874GeneralChanged
  • Updated the Literal Function Names for relative date/datetime functions. Previously, relative date/datetime functions resolved to a different value when used in the projection as opposed to the predicate. For example: SELECT LAST_MONTH() AS lm, Col FROM Table WHERE Col > LAST_MONTH(). Formerly, the two LAST_MONTH() methods would resolve to different datetimes. Now, they will match.
  • As a replacement for the previous behavior, the relative date/datetime functions in the criteria may have an 'L' appended to them. For example: WHERE col > L_LAST_MONTH(). This will continue to resolve to the same values that were previously calculated in the criteria. Note that the "L_" prefix will only work in the predicate - it not available for the projection.
2021-06-0721.0.7828ADO.NETAdded
  • Added support for the DbCommand.CommandTimeout property.
2021-06-0521.0.7826Microsoft DataverseAdded
  • Added support for the AzureServicePrincipal authentication scheme.
  • Added support to authenticate submitting JWT certs instead of the OAuthClientSecret for the AzureServicePrincipal and AzureAD authentication schemes.
2021-05-2921.0.7819ADO.NETRemoved
  • Removed support for SSRS 2008.
2021-04-2521.0.7785GeneralAdded
  • Added support for handling client side formulas during insert / update. For example: UPDATE Table SET Col1 = CONCAT(Col1, " - ", Col2) WHERE Col2 LIKE 'A%'
2021-04-2321.0.7783GeneralChanged
  • Updated how display sizes are determined for varchar primary key and foreign key columns so they will match the reported length of the column.
2021-04-1621.0.7776ADO.NETChanged
  • Separated the ADO.NET Provider assembly and Entity Framework Core 5 Nuget packages.
  • Single precision floating point numbers are now reported as with the Data Type Name as "real". Double precision floating point numbers now have their Data Type Name reported as "float". This change does not impact the actual data types of these columns - only the reported data type name.
  • Separate EFCore 3.0, 3.1 and EFCore 5 dlls are now shipped with the driver. The 2.0 and 2.1 EFCore dlls are removed.
2021-04-1621.0.7776GeneralAdded
  • Non-conditional updates between two columns is now available to all drivers. For example: UPDATE Table SET Col1=Col2
2021-04-1621.0.7776GeneralChanged
  • Reduced the length to 255 for varchar primary key and foreign key columns.
2021-04-1621.0.7776GeneralChanged
  • Updated implicit and metadata caching to improve performance and support for multiple connections. Old metadata caches are not compatible - you need to generate new metadata caches if you are currently using CacheMetadata.
2021-04-1621.0.7776GeneralChanged
  • Updated index naming convention to avoid duplicates.

Copyright (c) 2026 CData Software, Inc. - All rights reserved.
Build 26.0.9655