我正在尝试重新创建此演练
https://learn.microsoft.com/en-us/azure/media-services/latest/stream-files-tutorial-with-api#download-the-sample
作为一个Azure函数,Azure函数SDK和Microsoft.IdentityModel.Clients.ActiveDirectory之间似乎存在一些不兼容。如果您尝试像这样创建新ArmClientCredentials
ArmClientCredentials credentials = new ArmClientCredentials(config);
你得到这样的错误
无法加载文件或程序集'Microsoft.IdentityModel.Clients.ActiveDirectory, Version=3.19.4.11002
特定的 nuget 包将添加到项目中。这是否需要此处未显示的额外步骤?
使用Azure 函数使用 blob 触发器模板时,我遇到了类似的问题。我没有使用最新版本的Microsoft.IdentityModel.Clients.ActiveDirectory
(在撰写本文时为 3.19.4(,我不得不降级到媒体服务包正在寻找的版本号(在错误中指示(。
适用于媒体服务 v2 的项目.json:
{
"frameworks": {
"net46":{
"dependencies": {
"windowsazure.mediaservices": "4.1.0.1",
"windowsazure.mediaservices.extensions": "4.1.0.1",
"Microsoft.IdentityModel.Clients.ActiveDirectory": "3.13.1",
"Microsoft.IdentityModel.Protocol.Extensions": "1.0.2.206221351"
}
}
}
}
请检查以下设置是否适用于你和媒体服务 v3。至少,这些应该在 Azure 函数中的project.json
中:
{
"frameworks": {
"net46":{
"dependencies": {
"Microsoft.Azure.Management.Media": "1.0.0",
"Microsoft.IdentityModel.Clients.ActiveDirectory": "3.19.4",
"WindowsAzure.Storage": "9.1.1"
}
}
}
}
我能够通过将软件包的版本降低到 3.14 来解决此问题。 这是解决方案的存储库(使用 csproj(
https://github.com/isaac2004/AzureMediaServicesDemo