4.10使用NuGet包参考的插件不能正确部署

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了4.10使用NuGet包参考的插件不能正确部署相关的知识,希望对你有一定的参考价值。

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

例外:插件'我的插件'。无法加载文件或程序集'IdentityServer4,Version = 2.1.1.0,Culture = neutral,PublicKeyToken = null'。该系统找不到指定的文件。

如果我将nuget软件包的程序集直接复制到项目中并将其视为内容并部署,则会找到并加载程序集,但这很麻烦,并且不能像这样工作。

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

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

答案

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

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

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

我想找到更好的方法,但还没有运气。

以上是关于4.10使用NuGet包参考的插件不能正确部署的主要内容,如果未能解决你的问题,请参考以下文章

如何添加 NuGet 仅源包依赖项

VS 中NuGet 尝试还原程序包时出错"*"已拥有为"**"定义的依赖项

如何调试从 TeamCity 部署的我的 nuget 包?

推荐一个vs Nuget部署插件

nuget包管理nuget服务器发布包时出现请求报错 406 (Not Acceptable)

无法卸载/重新安装 NuGet 包