Можно ли использовать файлы json в качестве шаблонов в фабрике данных Azure через.Net SDK?

Я использую.Net SDK для создания конвейеров и их наборов данных, связанных сервисов. У меня есть сомнения, что мы можем получить значения из шаблонов JSON и передать эти значения встроенным методам. Следующий класс используется для создания связанной службы хранилища Azure.

    client.LinkedServices.CreateOrUpdate(resourceGroupName, dataFactoryName,
                new LinkedServiceCreateOrUpdateParameters()
                {
                    LinkedService = new LinkedService()
                    {
                        Name = "AzureStorageLinkedService",
                        Properties = new LinkedServiceProperties
                        (
                            new AzureStorageLinkedService("DefaultEndpointsProtocol=https;AccountName=**StorageName**;AccountKey=**StorageKey**")
                        )
                    }
                }
            );

Я должен получить значения для имени и свойств из шаблона JSON и передать эти значения в класс LinkedServiceCreateOrUpdateParameters.

1 ответ

Решение

Насколько мне известно, вы можете использовать LinkedServiceCreateOrUpdateWithRawJsonContentParameters вместо LinkedServiceCreateOrUpdateParameters.

LinkedServiceCreateOrUpdateWithRawJsonContentParameters имеет свойство содержимого, которое может устанавливать параметры шаблона json.

Более подробно вы можете обратиться к этому примеру.

JSON файл:

{
    "name": "AzureStorageLinkedService",
    "properties": {
        "type": "AzureStorage",
        "description": "",
        "typeProperties": {
            "connectionString": " "      }
    }
}

Чистый код:

LinkedServiceCreateOrUpdateWithRawJsonContentParameters d1 =  new LinkedServiceCreateOrUpdateWithRawJsonContentParameters();

string path = @"D:\json2.txt";

using (StreamReader s1 = new StreamReader(path))
{

    d1.Content = s1.ReadToEnd();
}


Console.WriteLine("Creating Azure Storage linked service");

client.LinkedServices.BeginCreateOrUpdateWithRawJsonContent(resourceGroupName, dataFactoryName,"linkservicename", d1);

Результат:

Другие вопросы по тегам