我已经为此苦苦挣扎了一段时间。
我有一个clients/513
看起来像这样的客户端对象 ( ):
{
"Risks": [
{
"Id": "421eacf0-14e9-4004-ab0b-95d20e976aac",
"RiskFactor": "ElectricalEquipment",
"Description": "Should be allowed to play with electronics."
},
{
"Id": "4bbecbe2-acfc-45c3-b87a-3321e1eca95a",
"RiskFactor": "ViolenceToStaffVerbal",
"Description": "Tourettes"
}
}
我创建了一个包含以下代码的索引:
地图
from c in docs.Clients
from r in c.Risks
select new { ClientId = c.Id, RiskId = r.Id }
转换
from c in results
from r in c.Risks
select new { ClientId = c.Id, RiskId = r.Id }
我认为我了解 MAP 只是定义了您希望能够搜索的属性。并且 TRANSFORM 以某种形状返回实际数据。
我想返回 ClientId、RiskId 以及可能与风险相关的其他一些属性,以便我可以这样做.As<ViewModel>()
,但是当我执行查询时,我似乎得到了一些不一致的结果。(它喜欢改变它返回的结果数量,这取决于我执行查询的次数,有时是 4 次,有时是 5 次)。
另外:按 RiskId 过滤似乎会返回一个,有时会返回多个风险,其 id 不是指定的 Id。
任何帮助将非常感激。