.net 如何在NuGet包中正确包含rd.xml文件?

.net 如何在NuGet包中正确包含rd.xml文件?,.net,nuget,.net-core,.net-native,.net,Nuget,.net Core,.net Native,我正在开发一个大量使用反射的库,目标是.NET核心(netstandard1.3)和完整的.NET(net451) 要使其与.NET Native(即UWP发布版本)一起工作,它需要一个rd.xml文件,如下所示: <Directives xmlns="http://schemas.microsoft.com/netfx/2013/01/metadata"> <Library Name="MyLibrary"> <!-- bunch of directi

我正在开发一个大量使用反射的库,目标是.NET核心(
netstandard1.3
)和完整的.NET(
net451

要使其与.NET Native(即UWP发布版本)一起工作,它需要一个rd.xml文件,如下所示:

<Directives xmlns="http://schemas.microsoft.com/netfx/2013/01/metadata">
  <Library Name="MyLibrary">
    <!-- bunch of directives here -->
  </Library>
</Directives>
dotnetpack-c发行版
生成的包确实在预期的位置包含了
MyLibrary.rd.xml
文件

但是,当我在UWP应用程序中使用该包时,.NET Native没有拾取
.rd.xml
文件(来自NuGet,不是作为项目参考);应用程序因缺少元数据错误而崩溃


我错过了什么?

马特·惠尔登的评论让我走上了正确的道路。基于xproj的项目没有文件属性,但是
嵌入资源的正确等价物是框架部分中的
buildOptions/embed
,而不是
packOptions/files

"uap10.0": {
  "buildOptions": {
    "embed": {
      "include": "Properties/MyLibrary.rd.xml"
    }
  }
}

如果您将其作为库资源包含,它是否仍然无法获取它?请参见此处的“无代码更改:@mattwilden谢谢!我在project.json中使用了相当于“嵌入式资源”的方法,它可以工作(参见我的答案)。看起来我引用的那篇博文已经过时了。太好了。很高兴你重回正轨。
"uap10.0": {
  "buildOptions": {
    "embed": {
      "include": "Properties/MyLibrary.rd.xml"
    }
  }
}