我正在尝试重新创建此演练
作为 Azure Function,Azure Function SDK 和 Microsoft.IdentityModel.Clients.ActiveDirectory 之间似乎存在一些不兼容性。如果您尝试像这样创建新的 ArmClientCredentials
ArmClientCredentials 凭证 = new ArmClientCredentials(config);
你会得到这样的错误
Could not load file or assembly 'Microsoft.IdentityModel.Clients.ActiveDirectory, Version=3.19.4.11002
特定的 nuget 包已添加到项目中。这是否需要此处未显示的额外步骤?
最佳答案
我在使用使用 blob 触发器模板的 Azure Functions 时遇到了类似的问题。我不得不降级到媒体服务包正在寻找的版本号(在错误)。
我的project.json适用于媒体服务v2:
{
"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 Function 的 project.json
中:
{
"frameworks": {
"net46":{
"dependencies": {
"Microsoft.Azure.Management.Media": "1.0.0",
"Microsoft.IdentityModel.Clients.ActiveDirectory": "3.19.4",
"WindowsAzure.Storage": "9.1.1"
}
}
}
}
关于Azure 媒体服务 v3 与 Azure Function 不兼容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50499078/