我正在尝试构建一个包含许多功能的安装程序,我正在使用heat来为每个功能收集文件目录.
我的源目录结构如下所示:
HarvestDir
\FeatureA
\FeatureImpl.dll
\FeatureImpl2.dll
\FeatureB
\FeatureImpl.dll
\FeatureImpl2.dll
Run Code Online (Sandbox Code Playgroud)
所以我为每个功能执行heat.exe为每个功能创建一个片段,但我得到基本相同的片段,例如
[...] Source="SourceDir\FeatureImpl.dll"
[...] Source="SourceDir\FeatureImpl2.dll"
Run Code Online (Sandbox Code Playgroud)
我真正想要的是这样的:
[...] Source="SourceDir\FeatureA\FeatureImpl.dll"
[...] Source="SourceDir\FeatureA\FeatureImpl2.dll"
Run Code Online (Sandbox Code Playgroud)
和
[...] Source="SourceDir\FeatureB\FeatureImpl.dll"
[...] Source="SourceDir\FeatureB\FeatureImpl2.dll"
Run Code Online (Sandbox Code Playgroud)
我可以使用-var来指定一个单独的变量来表示每个特征的源位置,但是我必须将这些变量的值传递给wixproj(我将有~10个特性).
那么,有什么方法可以在我收获的片段中包含相对路径吗?
因此,我想做的是查询所有包含“巴黎”市和“法国”州的文档。我需要进行某种连接,但我无法弄清楚如何构建它。
我正在使用 c# 驱动程序,但我很乐意接受使用任何方法的帮助。
{
"_id" : ObjectId("519b407f3c22a73a7c29269f"),
"DocumentID" : "1",
"Meta" : [{
"Name" : "City",
"Value" : "Paris",
}, {
"Name" : "State",
"Value" : "France",
}
}]
}
{
"_id" : ObjectId("519b407f3c22a73a7c29269g"),
"DocumentID" : "2",
"Meta" : [{
"Name" : "City",
"Value" : "Paris",
}, {
"Name" : "State",
"Value" : "Texas",
}
}]
}
Run Code Online (Sandbox Code Playgroud) 所以,我有一个看起来像这样的列表.它基本上是一堆物品的状态历史,最近的状态代表当前状态.
Record Id State Date
===== === ========= =======
1 A Waiting Jan 01
2 A InProgress Jan 02
3 A Finished Jan 03
4 B Waiting Jan 02
5 C Waiting Jan 01
6 C InProgress Jan 02
7 D Waiting Jan 01
8 D InProgress Jan 02
Run Code Online (Sandbox Code Playgroud)
我正在寻找的是能够查询每个项目的"当前"状态.例如,我想说:"给我所有的ID都是'InProgress'"并获得Id D和Id C,但不是Id A(因为它的最新状态是'完成').
我知道我必须做一些分组和一些订购或Maxing,但我不能完全把它放在一起.