Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将共享的C NuGet依赖项添加到C++/Cli项目?_C#_.net_Visual Studio 2012_C++ Cli_Nuget - Fatal编程技术网

C# 如何将共享的C NuGet依赖项添加到C++/Cli项目?

C# 如何将共享的C NuGet依赖项添加到C++/Cli项目?,c#,.net,visual-studio-2012,c++-cli,nuget,C#,.net,Visual Studio 2012,C++ Cli,Nuget,上下文:包含两个程序集Cs和Cpp的Visual Studio解决方案 Cs是一个C/.net45 dll CPP是一个C++/CLI DLL,一个C++/DLL编译的CL/CLR。 我有一些依赖项是来自nuget.org的纯C项目。我使用作者提供的原始软件包。将它们添加到Cs项目可以很好地工作,但不能添加到Cpp 请参考NuGet文档,尤其是-IncludeReferencedProjects参数 来自项目部门 关于…在您的C++/CLI项目中,只需添加一个参考菜单->参考->添加新参考->

上下文:包含两个程序集Cs和Cpp的Visual Studio解决方案

Cs是一个C/.net45 dll CPP是一个C++/CLI DLL,一个C++/DLL编译的CL/CLR。 我有一些依赖项是来自nuget.org的纯C项目。我使用作者提供的原始软件包。将它们添加到Cs项目可以很好地工作,但不能添加到Cpp

<如何将C包添加到C++项目?

因为它是C++ + CLI,我可以很容易地使用.NET对象,并且我使用C++库中的C++库中的东西。但不知怎么的,NuGET只允许我选择C项目来添加C依赖项,而不是C++ +CLR。p> 请参考NuGet文档,尤其是-IncludeReferencedProjects参数

来自项目部门


关于…

在您的C++/CLI项目中,只需添加一个参考菜单->参考->添加新参考->浏览->浏览。。。下载到您的[solutionfolder]/packages/nlog的nlog.dll。。。文件夹
这似乎对我很有用。

我这样做的方法是制作一个nugetmaster,它引用了其他两个项目将使用的所有NuGet。首先构建一个,并在每个项目中手动引用nuget程序集。额外的好处是对版本有更多的控制,只需一次就可以更新所有其他项目。这个比例很好


另一种方法类似于上面的方法-创建他们都使用的共享C程序集,这也使用nuget程序集实现所有代码。并且只暴露包装。

这个NuGet问题是相关的:有进展吗?4年后的VS2017中,这似乎仍然是一个问题,如果我们完全在C土地上,这将起作用;这个问题主要集中在C++和CLI和C互操作上。如果你有VS项目,它应该工作。这个解决方案不依赖于C,重要的是你的项目的引用如果你正确使用项目引用,它应该工作……基本问题是C++和C++ +CLI项目默认为Nube NuGube包,而C项目默认为C nuget包。NuGet当前不支持将C包添加到本机项目中。这会对包含确切版本的路径进行编码,需要稍后手动更新。