При использовании Sitecore Query вам необходимо экранировать имена элементов с дефисами. От SDN :
Элементы с тире в именах («-») должны быть включены в символы «#». Пожалуйста, используйте такой синтаксис: / sitecore / content / Home / # About-us #. В противном случае вы можете получить следующую ошибку: Неверный источник поиска "/ sitecore / content / TestSiteB / Home / About-us": конец строки ожидается в позиции 38. Также, имя элемента должно быть включено в символы «#», если оно содержит «И» или «или» слово и используется перед символами «// ». Например: "/ sitecore / content / Home / # новости и события # // ".
UPDATE:
Я подтвердил, что это относится и к быстрым запросам.
End of string expected at position 27.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: Sitecore.Data.Query.ParseException: End of string expected at position 27.
Source Error:
Line 21: protected void Page_Load(object sender, EventArgs e)
Line 22: {
Line 23: Sitecore.Context.Database.SelectSingleItem("fast:/sitecore/Content/Home/Test-Item");
Line 24:
Line 25: Model = Sitecore.Context.Item;
Тот же код отлично работает с #escapes #:
Sitecore.Context.Database.SelectSingleItem("fast:/sitecore/Content/Home/#Test-Item#");