当前位置: 首页 > 知识库问答 >
问题:

无法用Azure函数加载文件或程序集System.Fabric

花和宜
2023-03-14

对于可以与Azure函数一起使用的包是否有任何限制。我已经尽可能多地研究了,但似乎并不是这样,然而,当我试图创建一个引用包“Microsoft.ServiceFabric”的Azure函数时,我得到了以下错误:

corelib:执行函数时异常:ScaledOwnServiceFabrics。FunctionApp2:无法加载文件或程序集“System.Fabric,版本=6.0.0.0,Culture=Neutrine,PublicKeyToken=31BF3856AD364E35”。无法找到或加载特定文件。(来自HRESULT的例外:0x80131621)。System.Private.Corelib:无法加载文件或程序集“System.Fabric,版本=6.0.0.0,Culture=Neutrine,PublicKeyToken=31BF3856AD364E35”。

我尝试过Azure Func和1和2,以及.NET Framework和.NET Core,但运气不好。

using System;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Host;
using Microsoft.Extensions.Logging;
using System.Fabric;

namespace FunctionApp5
{
  public static class Function1
  {
    [FunctionName("Function1")]
    public static void Run([TimerTrigger("*/5 * * * * *")]TimerInfo myTimer, ILogger log)
    {
      log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");
      FabricClient client = new FabricClient();
    }
  }
}

这可能吗?或者是对Visual Studio中Azure函数的限制?如果可能,哪些包是可以接受的?

共有1个答案

仲孙德惠
2023-03-14
  • ServiceFabric包是x64位,如果函数的目标是32bit,它将失败。尝试Jerry Liu提出的解决方案
  • 服务结构包必须作为包添加,而不是在项目中直接引用dll,因为它依赖于其他库。您应该添加NuGet包Microsoft.ServiceFabric.
  • Microsoft.ServiceFabric最新版本6.3.x将.NET Standard 2.0.NET Framework4.54.7.1,请确保您在项目中使用了其中任何一个。
  • 确保Microsoft.ServiceFabricDLL在生成\部署时被复制到bin文件夹。
  • 在群集外使用FabricClient时,必须指定设置和凭据,否则将无法连接到群集。请参见此示例和此文档。
  • FabricClient使用Service Fabric API与集群交互,如果包有问题,另一个选择是使用HttpClient并向API发出请求,避免包冲突
 类似资料:
  • 我试图托管一个webproject,但是当服务器试图编译它时,我得到以下错误: 未处理的异常:System.io.FileLoadException:无法加载文件或程序集“Microsoft.codeAnalysis,版本=1.1.1.0,Culture=Neutrice,PublicKeyToken=31BF3856AD364E35”或其依赖项之一。定位的程序集的清单定义与程序集引用不匹配。(来

  • 尝试使用CosmosDB bidning创建一个HttpTrigger v2 Azure函数,该函数将使用SQLQuery从路由数据中查找ID。这与Microsoft在这里提供的示例非常相似。我正在使用VS代码开发这个函数。代码如下: 函数(.../GetUser)错误:Microsoft.Azure.webjobs.host:错误索引方法'GetUser'。System.Private.Core

  • 我在我的项目中使用的是umbraco 4.11.3。我的项目在Windows 7上运行良好,并在visual studio 2012上运行。但它在Win 8中从visual studio 2012运行时并不工作! 错误是: 无法加载文件或程序集“System.Web”。Mvc,Version=2.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e

  • 问题内容: 我正在使用c#和数据库MySQL开发桌面应用程序。当我在计算机上安装其安装程序时,它可以正常工作,但是当我在其他计算机上安装它的安装程序时,尝试访问数据库时会出现以下异常。我用来与MySQL通信。 无法加载文件或程序集“ MySql.Data,版本= 6.2.2.0,区域性=中性,PublicKeyToken = c5687fc88969c44d”或其依赖项之一。该系统找不到指定的文件

  • 问题内容: 我完全不知所措-我仍然什至没有真正理解的地方遇到超级奇怪的问题…我正在运行Entity Framework 4.1,MySql 5.xx和MySql Connector为6.4.4版-一切正常但是在本地,只要我上传到服务器,就会收到: 我很困惑,我很肯定我在Bin目录中有MySql 6.4.4 dll,我的Web.config也对版本6.3.6进行了零引用- 我已经在整个项目中(使用全

  • 问题内容: 更新到新软件包Microsoft.EntityFrameworkCore.SqlServer 1.1.2之后,尝试创建DBContext时出现错误: 发生System.IO.FileLoadException HResult = 0x80131040 消息=无法加载文件或程序集’Microsoft.Extensions.DependencyInjection.Abstractions,