c# – 如何设置nuget引用的动态路径?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 如何设置nuget引用的动态路径?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1418字,纯文字阅读大概需要3分钟。
内容图文
![c# – 如何设置nuget引用的动态路径?](/upload/InfoBanner/zyjiaocheng/789/6247d95dddfc4978a5d14d08a4051b91.jpg)
以下是示例项目结构:
{ ProjectA }
{ packages } <-- packages are created here
{ ProjectA }
- ProjectA.csproj <-- references ProjectB and C.
- packages.config
- ProjectA.sln <-- contains all projects: A, B and C.
{ ProjectB }
- ProjectB.csproj
- packages.config
{ ProjectC }
- ProjectC.csproj
- packages.config
*{ packages} <-- *When I manually paste packages here. So one level above ProjectB.csproj file, then ProjectB compiles.
ProjectA解决方案包含所有三个项目:A,B和C.ProjectA参考ProjectB和ProjectC.
当我编译ProjectA(项目B和C也被编译)时,所有nuget包都被下载到与解决方案文件相同级别的{packages}文件夹中.问题是ProjectB没有编译.是的……只有ProejctB.我甚至不会调查为什么只有一个项目编译,尽管他们的配置完全相同.无论如何…
在ProjectB和C中,当我展开引用时,来自nuget的dll被视为缺失(带有黄色矩形).不管怎样,ProjectC都会编译,但ProjectB却没有.错误说它无法在packages文件夹中找到明确的引用.
我的问题是,我如何编程/配置该发送(伪代码):
“亲爱的ProejctB,请查找与解决方案文件在同一级别生成的包文件夹中的引用.解决方案文件,现在正在尝试编译.谢谢”
PS.从技术上讲,dll(参考)的路径将是有点动态的.它将根据打开/编译项目的解决方案文件而改变.可能吗?
解决方法:
解决它的最简单方法是将HintPath设置为:
<HintPath>$(SolutionDir)\packages\...
在ProjectB和ProjectC的.csproj文件中.它的字面意思是:“查找与解决方案文件在同一级别生成的包文件夹中的引用.解决方案文件,正在尝试立即编译您”
多次报告此问题.我相信它是固定的here.还有NuGetReferenceHintPathRewrite,但我没有测试它.
内容总结
以上是互联网集市为您收集整理的c# – 如何设置nuget引用的动态路径?全部内容,希望文章能够帮你解决c# – 如何设置nuget引用的动态路径?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。