装配参考天蓝色功能

时间:2018-02-07 00:11:46

标签: c# azure azure-functions

#r "System.Data"
#r "System.Threading"
#r "Microsoft.WindowsAzure.Storage"

using System.Net;
using System.Data;
using System.Data.SqlClient;
using System.Threading;
using System.Threading.Tasks;
using Microsoft.WindowsAzure.Storage;
using Microsoft.WindowsAzure.Storage.Blob;
using Microsoft.WindowsAzure.Storage.DataMovement;




public static async Task<HttpResponseMessage> Run(HttpRequestMessage req, 
TraceWriter log)
{
log.Info("C# HTTP trigger function processed a request.");

// parse query parameter
string name = req.GetQueryNameValuePairs()
    .FirstOrDefault(q => string.Compare(q.Key, "name", true) == 0)
    .Value;

if (name == null)
{
    // Get request body
    dynamic data = await req.Content.ReadAsAsync<object>();
    name = data?.name;
}

return name == null
    ? req.CreateResponse(HttpStatusCode.BadRequest, "Please pass a name on the query string or in the request body")
    : req.CreateResponse(HttpStatusCode.OK, "Hello " + name);

}

我正在尝试使用Httptriggered azure函数在云blob容器之间运行DataMovement。但是我一直收到以下错误:

2018-02-06T23:59:58.392 run.csx(12,38):错误CS0234:类型或命名空间名称&#39; DataMovement&#39;名称空间中不存在Microsoft.WindowsAzure.Storage&#39; (你错过了一个程序集引用吗?) 2018-02-06T23:59:58.407执行函数时出现异常:函数。 Microsoft.Azure.WebJobs.Script:脚本编译失败。 2018-02-06T23:59:58.407功能完成(失败,Id = 72ab129f-706e-497c-ac70-fcebdd3b41ec,持续时间= 131ms)

我可以使用比此处提供的列表更多的程序集: https://docs.microsoft.com/en-us/azure/azure-functions/functions-reference-csharp#referencing-external-assemblies

是不是?如果是这样,怎么样?

1 个答案:

答案 0 :(得分:0)

  

名称空间'Microsoft.WindowsAzure.Storage'中不存在类型或命名空间名称'DataMovement'

根据您的错误,我们知道DataMovement引用不在Microsoft.WindowsAzure.Storage包中。

它属于' Microsoft.Azure.Storage.DataMovement '包。 您可以参考我的方法将其安装在Azure Azure中的Azure函数中。

单击Azure功能&gt;查看文件&gt;添加名为'project.json'的新文件(如果它不存在)。在此文件中写入以下代码,然后单击运行以安装包:

{
  "frameworks": {
    "net46":{
      "dependencies": {
        "Microsoft.Azure.Storage.DataMovement": "0.7.0"
      }
    }
   }
}

然后我们可以使用'Microsoft.WindowsAzure.Storage.DataMovement'参考: enter image description here

  

我可以使用比此处提供的列表更多的程序集

是的,你可以在project.json文件中添加程序集并运行它来安装。