类型或命名空间名称' MediaServices'名称空间中不存在Microsoft.WindowsAzure' (你错过了一个程序集引用吗?)

时间:2017-01-18 08:01:34

标签: c# .net visual-studio-2015 azure-functions azure-media-services

我正在从Integrating Azure Media Services with Azure Functions文章中复制EncodeBlob_SingleOut_Function。在Visual Studio 2015上进行调试时,它在我的本地运行。但是,当我在Azure门户中发布该功能时,我得到了#34;类型或命名空间名称' MediaServices'名称空间中不存在Microsoft.WindowsAzure' (你错过了一个装配参考吗?)"编译时除了MediaServices类之外,Azure门户中的Function应用程序还无法找到其他对象,如CloudMediaContext,MediaServicesCredentials,IAsset,IAccessPolicy等。

2 个答案:

答案 0 :(得分:1)

很棒的回应布鲁斯, 是的,它与nugget和包管理器有关。下拉Project.json文件中的块包似乎存在问题。 我之前已经注意到了这一点,但还没有弄明白是什么引发了这个问题。

今天我会再研究一下,看看我是否能找到为什么金块偶尔会失败。

另请注意,我刚刚更新了软件包版本,因为有更新版本可用。

{
  "frameworks": {
    "net46": {
      "dependencies": {
        "windowsazure.mediaservices": "3.8.0.3",
        "windowsazure.mediaservices.extensions": "3.8.0.3"
      }
    }
  }
}

答案 1 :(得分:0)

根据您的描述,我按照您提供的tutorial并根据EncodeBlob_SingleOut_Function示例创建了我的Azure功能。经过一些试验,我可以在Azure上按预期工作。以下是一些可能的原因,您可以参考它们:

登录Azure门户,选择您的功能应用,点击“功能应用设置>转到App Service Editor”。

确保Azure Funtion的内容结构如下所示:

注意: project.json文件位于您的函数的根目录下。文件夹PresetsShared需要位于wwwroot的根目录下。您可以按如下方式找到它们:

您可以通过App Service Editor或KUDU上传目录/文件。

配置完成后没有更改任何代码,当上传blob时你会发现该功能被触发如下:

enter image description here

enter image description here