繁体   English   中英

如何将 dll 和其他二进制文件从 asp.net 网站的 bin 文件夹复制到 azure devops 管道

[英]How do I copy my dll and other binaries from bin folder in asp.net website to azure devops pipeline

我刚刚从 bitbucket 云创建了一个 azure 管道并使用默认生成的 yaml 文件,当我运行运行新管道时,我在 VsBuild 中遇到错误

    Error CS0246: The type or namespace name 'RestSharp' could not be found (are you missing a using directive or an assembly reference?)

RestSharp.dll 位于 asp.net 网站的我的 bin 文件夹中。

查看原始日志,它说

    2020-07-10T03:35:57.7771564Z           Considered "d:\a\1\s\mywebsite\Bin\RestSharp.dll", but it didn't exist.
    2020-07-10T03:35:57.7772002Z           For SearchPath "{TargetFrameworkDirectory}".
    2020-07-10T03:35:57.7772374Z           Considered "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6\RestSharp.winmd", but it didn't exist.
    2020-07-10T03:35:57.7772874Z           Considered "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6\RestSharp.dll", but it didn't exist.
    ...

但是,当我在 VS 2019 中构建时,没有构建错误,因为我引用了我的 dll 和二进制文件。 如何修复此丢失的 dll 或引用的二进制文件? 如果我需要将文件从 bin 文件夹复制到构建目录,如何?

错误 CS0246:找不到类型或命名空间名称“RestSharp”

使用 bin 文件夹中的 .dll 文件路径作为HintPath进行了测试。 我遇到了同样的问题。

此问题的根本原因似乎是在参考时 Bin 文件夹中不存在RestSharp.dll

这是我解决此问题的解决方案:

步骤 1:在Packages.config文件中添加 package 引用。

例如:

<?xml version="1.0" encoding="utf-8"?>
<packages>
.....
  <package id="RestSharp" version="106.11.4" targetFramework="net472" />
</packages>

Step2:更改.csproj文件中的 RestSharp HintPath 由于您添加了 package 引用,因此您可以直接在 package 路径中获取 RestSharp.dll。

例如:

<Reference Include="RestSharp">
  <Private>True</Private>
  <HintPath>..\packages\RestSharp.106.11.4\lib\net452\RestSharp.dll</HintPath>
</Reference>

然后可以在构建中使用 RestSharp.dll。

顺便说一句,我建议您可以将它们转换为包,并在构建过程中恢复它们。 然后您可以在 package 路径中获取 dll 文件。 这样可以避免上面的错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM