我目前陷入了一個尚未找到解決方案的問題。我們使用自己的 API 來調(diào)用 Sitefinity 并返回名為 的對象Insights。我們目前嘗試僅返回IsFeatured值設(shè)置為 的見解yes。1它以 a或 a 的形式返回0。據(jù)我所知,問題出在我的查詢字符串中。我得出這個結(jié)論是因為一開始我們使用的是查詢$"/insights?$orderby=PublishDate&$top={topN}"。這按預(yù)期返回了見解,按 PublishDate 排序,并且僅返回我們輸入的值,例如3。當(dāng)我嘗試將過濾器添加到查詢中時出現(xiàn)問題。目前它看起來像這樣:$"/insights?$filter=contains(IsFeatured, 1)&$orderby=PublishDate&$top={topN}"。然而,當(dāng)它運行時,它會返回錯誤請求代碼 400。我們之前也使用過過濾器,如下例所示:$"/insights?$filter=contains(InsightCategory, 'NEWSLETTER')&$orderby=PublishDate&$skip={skip}&$top={take}"這按預(yù)期工作。我嘗試了一些變體來嘗試讓它工作,但所有請求都返回 400。更多可能有幫助的信息是 IsFeatured 返回的類型是 int。此調(diào)用也返回該值:$"/insights?$orderby=PublishDate&$top={topN}"。我可以在結(jié)果中看到這一點:此外,大寫的語法是正確的,因為如上面所見,工作的過濾器請求使用相同的語法。我也嘗試用 a 替換 進(jìn)行1測試0,但這也失敗了。
1 回答

蕪湖不蕪
TA貢獻(xiàn)1796條經(jīng)驗 獲得超7個贊
選擇字段與其他字段略有不同。
按 ChoiceField 值過濾集合
注意:通過 OData Web 服務(wù)使用 ChoiceField 時,字段值以數(shù)字形式返回(例如 2、4、8),而不是該字段中實際選擇的文本值(例如選項 1、選項 2、選項 3)。返回值表示已選擇哪個選項。它以 2 的冪形式返回該選項在所有選項集合中的位置 (2n)。例如,如果您為 ChoiceField 配置了 4 個選項 - 選項 1、選項 2、選項 3、選項 4,則服務(wù)返回的值將是:
如果所選選項為選項 1,則服務(wù)返回 1(2 的 0 次方) 如果所選選項為選項 2,則服務(wù)返回 2(2 的 1 次方) 如果所選選項為選項 3,則服務(wù)返回返回 4(2 的 2 次方) 如果所選選項是選項 4,則服務(wù)返回 8(2 的 3 次方)
- 1 回答
- 0 關(guān)注
- 129 瀏覽
添加回答
舉報
0/150
提交
取消