gpt4 book ai didi

azure - 无法在 Azure 移动服务上找到程序集

转载 作者:行者123 更新时间:2023-12-03 05:08:19 25 4
gpt4 key购买 nike

我有一个 Azure Mobile Service 项目,该项目依赖于另一个引用 FluentNHibernate 的(持久性)项目。本地一切都在 ReleaseDebug 模式下正确运行。发布该项目似乎很成功( azure 笑脸)。当我发出请求时,问题就开始了,其中使用了 FluentNHibernate 。我收到以下错误消息:

Unable to find assembly 'FluentNHibernate, Version=2.0.3.0, Culture=neutral, PublicKeyToken=null'.

我已经尝试了很多事情:

  • 重新安装软件包
  • 全新的普通移动服务
  • 在主项目的 Web.config 和持久项目的 App.config 中添加 dependentAssembly

让我有点困惑的是以下事实:当我更改 FluentNHibernate 包的版本时,我可以在发布预览窗口中看到该 dll 将不会更新。

我真的不确定这个问题是否取决于这个特定的包(FluentNHibernate)。例如,PublicKeyToken=null 是什么意思?我还可以尝试什么来使服务在云中运行?

最佳答案

下面的代码适用于我的解决方案。它将一个处理程序连接到 AppDomain 的 AssemblyResolve 事件,如果找不到程序集,则会引发该事件。在这种情况下,我告诉它检查当前加载的程序集,如果存在匹配则返回一个,这对于 FluentNHibernate 来说应该是这样。尝试将其作为 WebApiConfig.Register 中的第一行

public static void Register()
{
AppDomain.CurrentDomain.AssemblyResolve += (sender, args) =>
{
return AppDomain.CurrentDomain.GetAssemblies()
.Where(a => a.FullName == args.Name).FirstOrDefault();
};

// the rest of WebApiConfig.Register...
}

关于azure - 无法在 Azure 移动服务上找到程序集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33346384/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com