带有自定义活动的天蓝色数据工厂项目

azure data factory project with custom activities

我有一个 Azure 数据工厂项目。

我阅读了文档 https://docs.microsoft.com/en-us/azure/data-factory/data-factory-use-custom-activities 以将自定义活动添加到我的管道之一。

文档中说您必须压缩代表自定义活动的 class 库的 dll,并将此 zip 存储在 azure blob 中。

和管道的定义是:

{
"name": "LoadFromOnerxSalesInvoicesRaw",
"properties": {
    "description": "Test Deserialize Sales Invoices Raw",
    "activities": [
      {
        "type": "DotNetActivity",
        "typeProperties": {
          "assemblyName": "BICodeActivities.dll",
          "entryPoint": "BICodeActivities.Activities.OneRx.DeserializeSalesInvoiceToLines",
          "packageLinkedService": "biCABlobLS",
          "packageFile": "bi-activities-container/BICodeActivities.zip",
          "extendedProperties": {
            "SliceStart": "$$Text.Format('{0:yyyyMMddHH-mm}', Time.AddMinutes(SliceStart, 0))"
          }
        },
        "inputs": [
          {
            "name": "o-staging-onerx-salesInvoices"
          }
        ],
        "outputs": [
          {
            "name": "o-staging-onerx-salesInvoicesLines"
          }
        ],
        "policy": {
          "timeout": "00:30:00",
          "concurrency": 2,
          "retry": 3
        },
        "scheduler": {
          "frequency": "Day",
          "interval": 1
        },
        "name": "DeserializeSalesInvoiceToLines",
        "linkedServiceName": "biBatchLS"
      },
      {
        "type": "DotNetActivity",
        "typeProperties": {
          "assemblyName": "BICodeActivities.dll",
          "entryPoint": "BICodeActivities.Activities.OneRx.DeserializeSalesInvoiceToDiscounts",
          "packageLinkedService": "biCABlobLS",
          "packageFile": "bi-activities-container/BICodeActivities.zip",
          "extendedProperties": {
            "SliceStart": "$$Text.Format('{0:yyyyMMddHH-mm}', Time.AddMinutes(SliceStart, 0))"
          }
        },
        "inputs": [
          {
            "name": "o-staging-onerx-salesInvoices"
          }
        ],
        "outputs": [
          {
            "name": "o-staging-onerx-salesInvoicesDiscounts"
          }
        ],
        "policy": {
          "timeout": "00:30:00",
          "concurrency": 2,
          "retry": 3
        },
        "scheduler": {
          "frequency": "Day",
          "interval": 1
        },
        "name": "DeserializeSalesInvoiceToDiscounts",
        "linkedServiceName": "biBatchLS"
      }
    ],
    "start": "2017-04-26T09:20:00Z",
    "end": "2018-04-26T22:30:00Z"
}

}

在我的 visual studio 项目中设置此管道并构建时出现错误 "BICodeActivities.zip is not found in the solution"。

我必须压缩 dll 并手动添加到解决方案中?还是我需要做其他事情?

我假设您在与数据工厂项目相同的解决方案中将自定义活动作为 class 库。

如果是这样,您只需在数据工厂项目中引用 class 库项目。 右键单击 > 添加 > 引用。 Select 库项目。

完成后,当您构建解决方案时,Visual Studio 将为您处理 DLL 的压缩,并将 ZIP 文件夹添加为依赖项,这将显示在发布向导中以部署到 blob 存储链接服务。

如需进一步支持,请查看此博客 post。

https://www.purplefrogsystems.com/paul/2016/11/creating-azure-data-factory-custom-activities/

希望对您有所帮助。