This repository is for active development of the Azure SDK for .NET. For consumers of the SDK we recommend visiting our public developer docs at https://learn.microsoft.com/dotnet/azure/ or our versioned developer docs at https://azure.github.io/azure-sdk-for-net.
MIT License
5.26k
stars
4.6k
forks
source link
[BUG] Azure Data Factory Default Value Expression not valid #43532
but Azure Data Factory is not reflecting this accurately. Apparently order matters in ADF.
When observing the deployed dataset
There doesn't appear any way to ensure the order. The following is what ADF is expecting to represent an expression.
"fileName": { "value": "@coalesce(null)", "type": "Expression" }
Expected behavior
Passing an object as json with those values should get parsed as valid expression in ADF.
Output to ADF should be
"fileName": { "value": "@coalesce(null)", "type": "Expression" }
Actual behavior
Value is not getting parsed as an expression.
"fileName": { "type": "Expression", "value": "@coalesce(null)" }
Reproduction Steps
Write an ADF .net project.
Define a Dataset with a parameter, set the default value to an expression like:
["fileName"] = new(EntityParameterType.String) { DefaultValue = BinaryData.FromObjectAsJson(new Dictionary<string, object>() { ["value"] = "@coalesce(null)", ["type"] = "Expression" }) },
Write that dataset to an ADF instance, anything that references that's dataset you should be able to observe that that parameter is not getting parsed as an expression.
Library name and version
Azure.ResourceManager.DataFactory 1.0.0
Describe the bug
Using the .net SDK defining a should result in an expression in Azure Data Factory.
["fileName"] = new(EntityParameterType.String) { DefaultValue = BinaryData.FromObjectAsJson(new Dictionary<string, object>() { ["value"] = "@coalesce(null)", ["type"] = "Expression" }) },
but Azure Data Factory is not reflecting this accurately. Apparently order matters in ADF. When observing the deployed dataset
There doesn't appear any way to ensure the order. The following is what ADF is expecting to represent an expression.
"fileName": { "value": "@coalesce(null)", "type": "Expression" }
Expected behavior
Passing an object as json with those values should get parsed as valid expression in ADF.
Output to ADF should be
"fileName": { "value": "@coalesce(null)", "type": "Expression" }
Actual behavior
Value is not getting parsed as an expression.
"fileName": { "type": "Expression", "value": "@coalesce(null)" }
Reproduction Steps
Write an ADF .net project. Define a Dataset with a parameter, set the default value to an expression like:
["fileName"] = new(EntityParameterType.String) { DefaultValue = BinaryData.FromObjectAsJson(new Dictionary<string, object>() { ["value"] = "@coalesce(null)", ["type"] = "Expression" }) },
Write that dataset to an ADF instance, anything that references that's dataset you should be able to observe that that parameter is not getting parsed as an expression.Environment
No response