我有以下代码片段。Xamarin Sitecore 扩展提供的示例代码的略微修改版本。
var requesttwo = ItemWebApiRequestBuilder.ReadItemsRequestWithSitecoreQuery("select * from /sitecore/content/Home//*[@@TemplateName='Article']")
.AddFieldsToRead(new string[3] { "Title", "Author", "Content" })
.AddScope(ScopeType.Self)
.Build();
ScItemsResponse response = null;
try
{
// And execute it on a session asynchronously
response = await session.ReadItemAsync(requesttwo);
}
catch (Exception e)
{
String error = e.Message;
}
当我更换时它按预期工作
ReadItemsRequestWithSitecoreQuery("select * from /sitecore/content/Home//*[@@TemplateName='Article']")
和
ReadItemsRequestWithPath("/sitecore/content/home")
但上面的块抛出“[Sitecore Mobile SDK] 来自互联网的数据具有意外的格式。” 我发现了这个问题,并且我确实认识到 sitecore 查询使用“@”,但我添加了下面的代码片段,因为它似乎暗示了我得到了相同的响应。
string format = HttpUtility.HtmlEncode("select * from /sitecore/content/Home//*[@@TemplateName='Article']");