Я использую запрос LINQ to SharePoint для возврата элементов из списка SharePoint.
var myOpenTasksQuery = from myTasks in tasks
where myTasks.TaskStatus != TaskStatus.Completed
select myTasks
Однако в списке, который я запрашиваю, в списке задач OOTB, есть несколько полей с множественным выбором (Status, Priority), которые переводятся в перечисления. В моих результатах запроса статус элемента задачи возвращается как "_2Normal", а не как "(2) Normal", как я ожидал. В файле прокси-сервера, созданного программой SPMetal.exe, я вижу, что для перечисления состояния задачи есть атрибут ChoiceAttribute, содержащий требуемое значение:
public enum Priority : int {
None = 0,
Invalid = 1,
[Microsoft.SharePoint.Linq.ChoiceAttribute(Value="(1) High")]
_1High = 2,
[Microsoft.SharePoint.Linq.ChoiceAttribute(Value="(2) Normal")]
_2Normal = 4,
[Microsoft.SharePoint.Linq.ChoiceAttribute(Value="(3) Low")]
_3Low = 8,
}
Как я могу изменить запрос выше, чтобы вернуть правильное значение?
Спасибо, MagicAndi.