【问题标题】:How to use my own DLLs instead of the one referenced by a dependent package如何使用我自己的 DLL,而不是依赖包引用的 DLL
【发布时间】:2020-07-02 08:44:14
【问题描述】:

我正在使用一个依赖于另一个包的 nuget 包(我们称之为A),我们称之为B
为了在我的项目中包含A,我将.csproj 文件更改为:

<ItemGroup>
    <PackageReference Include="A" Version="2.0.5" />
</ItemGroup>

当我运行 nuget restore 包时,B 也会从一些 nuget 源中消耗。
我想用我自己创建的 DLL 替换包 B 的 dll。 我可以在我的本地机器上完成它,只需将所需的 dll 复制粘贴到 bin 文件夹中即可。但是如何在 Azure 网站上做同样的事情?反正有没有自动化这个过程? 有什么方法可以告诉 nuget 不要从 nuget 源中获取 B 的 DLL,而是使用我想要的?

【问题讨论】:

  • 你为什么要这样做?
  • 嗨,这个问题你解决了吗?

标签: .net-core nuget azure-web-app-service packagereference


【解决方案1】:

更新:

感谢Shahryar的贡献,我们也可以选择添加dll文件,并将其设置为复制到编译文件夹中实现(在.csproj文件中定义属性)。

其实主要是改变最终编译文件的内容,因为最终部署后是按照编译文件运行的。

原答案:

你可以先在本地编译web app,然后将你的dll文件替换成bin中对应的文件。使用zip打包整个编译文件,然后使用zip部署将最终编译文件直接上传到Azure(部署到Azure的web app的运行依赖于这种方式上传的文件)

看看Zip Deploy

【讨论】:

  • 感谢您的帮助。我还没有尝试过你的解决方案。到目前为止,我所做的是将我自己的 dll 包含在 .csproj 文件中,并将其设置为复制到输出文件夹。这样,它就替换了从 nuget 获得的 dll!
  • @ShahryarSaljoughi 我将您的方法更新为我的答案。你能把它标记为结束这个问题的答案吗?这会对其他人有所帮助,当然你也可以自己写答案,谢谢。:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多