无法从程序集“ Microsoft ... AppAuthentication”中加载类型“ Microsoft ... SqlAppAuthenticationProvider”

问题描述

我正在遵循docs.microsoft.com上的指南,以确保从App Services中保护Azure sql数据库连接。我有一个ASP.NET MVC 5 Web应用程序,该应用程序引用了Entity Framework 6类库,并且两个项目都针对.NET 4.7.2。

我已经通过NuGet安装了Microsoft.Azure.Services.AppAuthentication软件包(对两个项目),并在web.config添加了必需的身份验证提供程序配置部分和sqlAuthenticationProvider引用。

启动应用程序后,我登录并且一旦进行数据库调用,就会导致异常:

Could not load type 'Microsoft.Azure.Services.AppAuthentication.sqlAppAuthenticationProvider' from assembly 'Microsoft.Azure.Services.AppAuthentication'.

我也尝试定位到版本4.7.1和4.8。我为.NET的所有三个版本添加了条件编译符号。我没有看到对其他人有用的修复程序似乎对我有用。无论如何,sqlAppAuthenticationProvider不会出现在对象浏览器中。

Object browser view of the Microsoft.Azure.Services.AppAuthentication namespace

解决方法

好的,原来上面链接的教程实际上指定了NuGet软件包的版本,并且此后已进行了更新。当我安装Microsoft.Azure.Services.AppAuthentication程序包时,我没有注意到这一事实。

新版本解决了该问题。