我们有一堆引用Prism.Core的C#代码。 Prism.Core是一个可移植的类库。当我们在C++/CLI中引用此方法并尝试使用委托(delegate)命令时,我们得到:



谁能解释为什么?除了重建源代码之外,还有其他方法可以解决,因为Prism被Nugeted到了我们的C#源代码中,所以我不想这么做?

最佳答案

我有类似的设置并带有相同的警告。 C#项目引用了具有多个目标框架的NuGet包。由于不能将托管的NuGet软件包添加到C++/CLI项目,因此必须为该项目手动添加引用。手动添加的引用最终指向NuGet包中其他目标框架的DLL。就像是:

CSharpProject.csproj->包\Prism.Core.6.2.0\lib\portable-win + net45 + wp80 + wpa81 + MonoAndroid10 + MonoTouch10 + Xamarin.iOS10\Prism.dll
CppCliProject.vcxproj->包\Prism.Core.6.2.0\lib\net45\Prism.dll

在我的情况下,将C++/CLI项目中的引用更改为使用与C#项目相同的DLL即可解决此问题。

10-08 05:41
查看更多