0

我有一款Windows Phone 8.1的解决方案具有以下项目:
添加Windows运行时组件的参考现有项目

  • MainApplication(用于应用程序本身)
  • 便携式类库( PCL)(对于一些有用的方法和诸如此类的东西)
  • Windows运行时组件(WinRT的)(后台任务)

我试图编译PCLWinRT的.nuget包,我知道我能做到这一点与PCL,在不过,我失去了一些东西WinRT
要手动测试它,我从溶液中除去项目,并加入自己的构建作为参考,即PCL产生的.dll文件,我将添加到我的MainApplication作为参考。这里的问题在于,WinRT不会生成.dll,而是生成文件,而是生成.winmd文件。这里的东西是我不知道如何将该文件添加到我的PCL作为参考。

综上所述,作为参考,如何添加项目构建的WinRT的结果?是.winmd文件还是其他?

+1

您的**问题**非常**难**阅读**。 – 2014-11-04 20:38:30

+1

您不能将WinRT参考添加到您的PCL。这是PCL的重点。 WinRT是一个特定于平台的.NET子集。 PCL是一个平台不可知的子集。本质上,PCL是WinRT的一个子集。这意味着试图告诉PCL库有关WinRT DLL意味着将有一堆PCL库不能理解的引用。如果您需要在两个库之间进行通信,则需要使用依赖注入将呼叫挂接到WinRT中的PCL。 WinRT知道PCL所做的一切,所以它需要努力使PCL明白它的需求。 – 2014-11-04 22:19:39

+0

@NateDiamond其实你可以,我想出了一个办法。如果你有兴趣检查我的答案。 – 2014-11-14 08:05:42

回答

0

我设法解决我的问题,这是一个问题,从搞清楚我应该添加的WinRT哪些文件。因此,当你创建一个.nuget包,要添加一个的WinRT项目就好像它是一个.DLL,你需要的WindowsRuntimeProject.pri文件和WindowsRuntimeProject.winmd文件。当您在您的项目上安装软件包时,WinRT将看起来像一个.dll
它看起来是这样的:在如何构建.nuget
enter image description here

更多信息,可以发现here