diff --git a/src/Build.Shared.props b/src/Build.Shared.props index 90a6744..221d137 100644 --- a/src/Build.Shared.props +++ b/src/Build.Shared.props @@ -6,18 +6,16 @@ $(MSBuildAllProjects);$(MSBuildThisFileFullPath) - 2.10.0 3.19.8 4.35.1 - 4.7.9489-v9.0-master - 4.7.9409-v9.0-master + 4.7.11043-v9.0-weekly-2209.2 + 4.7.11043-v9.0-weekly-2209.2 4.6.6061-weekly-2108.5 - 4.7.6346-master 13.0.1 2.3.20 9.0.2.45 9.0.2.34 - 2.0.19 + 3.0.5 0.4.20 3.1.0 3.1.8 diff --git a/src/GeneralTools/DataverseClient/Client/DataverseDataTypeWrapper.cs b/src/GeneralTools/DataverseClient/Client/DataverseDataTypeWrapper.cs index 6ebe7b4..05344a8 100644 --- a/src/GeneralTools/DataverseClient/Client/DataverseDataTypeWrapper.cs +++ b/src/GeneralTools/DataverseClient/Client/DataverseDataTypeWrapper.cs @@ -62,13 +62,19 @@ public enum DataverseFieldType /// Guid Type - Converts from a Guid Type /// UniqueIdentifier, - /// - /// User Specified type... will be appended directly. This type must be one of the valid Dataverse types - /// - Raw - - - } + /// + /// Use image columns to display a single image per row in the application + /// + Image, + /// + /// The File column is used for storing binary data + /// + File, + /// + /// User Specified type... will be appended directly. This type must be one of the valid Dataverse types + /// + Raw + } /// /// Contains a variable definition. diff --git a/src/GeneralTools/DataverseClient/Client/Model/ConfigurationOptions.cs b/src/GeneralTools/DataverseClient/Client/Model/ConfigurationOptions.cs index 3ea60d8..1ad1a39 100644 --- a/src/GeneralTools/DataverseClient/Client/Model/ConfigurationOptions.cs +++ b/src/GeneralTools/DataverseClient/Client/Model/ConfigurationOptions.cs @@ -60,7 +60,7 @@ public TimeSpan RetryPauseTime set => _retryPauseTime = value; } - private bool _useWebApi = Utils.AppSettingsHelper.GetAppSetting("UseWebApi", true); + private bool _useWebApi = Utils.AppSettingsHelper.GetAppSetting("UseWebApi", false); /// /// Use Web API instead of org service diff --git a/src/GeneralTools/DataverseClient/Client/ServiceClient.cs b/src/GeneralTools/DataverseClient/Client/ServiceClient.cs index 1cbb5a4..d8eb46f 100644 --- a/src/GeneralTools/DataverseClient/Client/ServiceClient.cs +++ b/src/GeneralTools/DataverseClient/Client/ServiceClient.cs @@ -632,8 +632,7 @@ public string EnvironmentId } /// - /// Use Web API instead of org service where possible. - /// WARNING. THEASE ARE TEMPORARY SETTINGS AND WILL BE REMOVED IN THE FUTURE + /// Use Dataverse Web API instead of Dataverse Object Model service where possible - Defaults to False. /// public bool UseWebApi { @@ -1590,6 +1589,20 @@ public OrganizationResponse ExecuteOrganizationRequest(OrganizationRequest req, { return ExecuteOrganizationRequestImpl(req, logMessageTag, useWebAPI, false); } + + /// + /// Executes a Dataverse Organization Request (In Async mode) and returns the organization response object. Also adds metrics for logging support. + /// + /// Organization Request to run + /// Message identifying what this request in logging. + /// When True, uses the webAPI to execute the organization Request. This works for only Create at this time. + /// Propagates notification that operations should be canceled. + /// Result of request or null. + public async Task ExecuteOrganizationRequestAsync(OrganizationRequest req, string logMessageTag = "User Defined", bool useWebAPI = false , CancellationToken cancellationToken = default) + { + return await ExecuteOrganizationRequestAsyncImpl(req, cancellationToken, logMessageTag, useWebAPI, false); + } + #endregion #region Internal @@ -1650,7 +1663,7 @@ private async Task ExecuteOrganizationRequestAsyncImpl(Org /// Adds the bypass plugin behavior to this request. Note: this will only apply if the caller has the prvBypassPlugins permission to bypass plugins. If its attempted without the permission the request will fault. /// Propagates notification that operations should be canceled. /// Result of create request or null. - internal async Task Command_ExecuteAsync(OrganizationRequest req, string errorStringCheck, System.Threading.CancellationToken cancellationToken, bool bypassPluginExecution = false) + internal async Task Command_ExecuteAsync(OrganizationRequest req, string errorStringCheck, CancellationToken cancellationToken, bool bypassPluginExecution = false) { ValidateConnectionLive(); if (DataverseServiceAsync != null) diff --git a/src/GeneralTools/DataverseClient/UnitTests/LivePackageTestsConsole/LivePackageTestsConsole.csproj b/src/GeneralTools/DataverseClient/UnitTests/LivePackageTestsConsole/LivePackageTestsConsole.csproj index b43a06e..e3bc026 100644 --- a/src/GeneralTools/DataverseClient/UnitTests/LivePackageTestsConsole/LivePackageTestsConsole.csproj +++ b/src/GeneralTools/DataverseClient/UnitTests/LivePackageTestsConsole/LivePackageTestsConsole.csproj @@ -31,6 +31,7 @@ + diff --git a/src/nuspecs/Microsoft.PowerPlatform.Dataverse.Client.ReleaseNotes.txt b/src/nuspecs/Microsoft.PowerPlatform.Dataverse.Client.ReleaseNotes.txt index f25ae0b..4d84fd1 100644 --- a/src/nuspecs/Microsoft.PowerPlatform.Dataverse.Client.ReleaseNotes.txt +++ b/src/nuspecs/Microsoft.PowerPlatform.Dataverse.Client.ReleaseNotes.txt @@ -7,6 +7,11 @@ Notice: Note: Only AD on FullFramework, OAuth, Certificate, ClientSecret Authentication types are supported at this time. ++CURRENTRELEASEID++ +Added Async version of ExecuteOrganizationRequest to allow for requests to be made bounded with a custom logging message. +Update Default settings for "UseWebAPI" in preparation for future work. + Note: for Create or Update operations that make extensive use of related entities you may need to reconfigure UseWebAPI to "true". + +1.0.9: Fixed an issue with Custom User Agent headers incorrectly causing a format error when .net core is used. Proper User-Agent format must be used to send requests including the user agent. Fixed an issue with an Empty OptionSetValue collection causing an ArgumentOutOfRangeException. Empty OptionSetValue collections will now be mapped to Null. Fixes https://github.com/microsoft/PowerPlatform-DataverseServiceClient/issues/292 Thanks for your report! Fixed an issue where EntityReference based operations do not propagate RowVersion when using WebAPI protocol. Fixes https://github.com/microsoft/PowerPlatform-DataverseServiceClient/issues/296