我正在尝试引用来自 Azure 函数应用项目(使用函数应用 v2 模板创建)中的类库(目标框架 .Net Framework 4.6.1),目标框架为 .Net Standard 2.0。.net 4.6.1 类库为System.Data.SqlClient v4.4.3安装了一个 nuget 包,以支持任何 SQL 操作。然后,我从函数应用项目调用 SQL 类库操作。事情编译正常,但在运行时出现以下错误:
执行函数时出现异常:下载加密订单文件。 SQLLib:无法加载文件或程序集"System.Data.SqlClient, 版本=4.2.0.1,区域性=中性,公钥令牌=b03f5f7f11d50a3a'。 系统找不到指定的文件。
根据一些在线论坛上给出的建议,我还将SQLClient nuget包降级到4.4.0,但它仍然不起作用。似乎 SQLClient dll 没有复制到函数的 bin 目录中,因此它在运行时失败。我想知道是否可以从 Azure Functions 引用 .net 4.6.1 项目?如果是,那么我做错了什么。
以下是运行时环境的详细信息:
- VS - 2017, v15.6.1
安装的产品:
- Azure 应用服务工具 v3.0.0
- Azure 函数和 Web 作业工具 15.0.40215.0
- Nuget 包管理器 4.6.0
您说类库已安装 System.Data.SqlClient v4.4.3,但错误消息说它找不到 System.Data.SqlClient, Version=4.2.0.1。也许您正在尝试引用错误的版本。