0

我有一个简单的 nopCommerce 4.10 插件,在部署和加载时无法找到通过 Nuget 包引用的程序集。

例外:插件“我的插件”。无法加载文件或程序集“IdentityServer4,版本=2.1.1.0,文化=中性,PublicKeyToken=null”。该系统找不到指定的文件。

如果我将 nuget 包的程序集直接复制到项目中并将其视为内容并部署程序集,则会找到并加载该程序集,但是这是 hacky 并且不是应该的工作方式。

我可以看到 Nop.Plugin.Payments.Square 插件使用 RestSharp 但是它本身并没有引用 Nuget 包,而是作为插件目录根目录中的程序集的副本,就像我在解决方法中所做的那样。

所以问题是 - 如何部署和解决插件中引用的 nuget 包?

4

1 回答 1

1

我的最后一个解决方案是CopyLocalLockFileAssemblies在 plugin.csproj 中使用:

<PropertyGroup>
    <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
</PropertyGroup>

它将复制所有引用,不仅是 NuGet 包,插件的工件会很大,但它可以工作。

我正在尝试找到更好的方法,但还没有运气。

于 2018-09-02T11:01:27.340 回答