Как исправить ошибку CSOM: тип данных в позиции X отличается от ожидаемого? - PullRequest
1 голос
/ 26 июня 2019

Я пытаюсь получить StatusAssginments ресурса, используя CSOM, включая поле History, но он продолжает давать мне следующее исключение:

Исключение типа «System.InvalidOperationException» произошло в Microsoft.SharePoint.Client.Runtime.dll, но не было обработано в коде пользователя

Дополнительная информация. Тип данных в позиции 5621 отличается от ожидаемого.

Вот код:

internal static List<StatusAssignment> RetrieveAssignments(ProjectContext context, string emailUsuario)
{
    List<StatusAssignment> result = new List<StatusAssignment>();
    var resources = context.LoadQuery(context.EnterpriseResources);
    context.ExecuteQuery();

    resources = resources.Where(i => i.Email == emailUsuario);

    foreach (var resource in resources)
    {
        var assignments = context.LoadQuery(resource.Assignments
                                                      .IncludeWithDefaultProperties(
                                                        assn => assn.Task,
                                                        assn => assn.Project,
                                                        assn => assn.Resource.Name,
                                                        assn => assn.History
                                                      ));
        context.ExecuteQuery(); // exception here

        result.AddRange(assignments);
    }

    return result;
}

Без строки assn => assn.History код работает просто отлично, но мне нужна информация внутри этого поля истории.

Я уже пытался обновить dll, которую я использую, также пытался сначала получить StatusAssignments, а затем получать историю по одному и гуглить, но не нашел никого с такой же проблемой. Мой пользователь назначен администратором сайта SPsite и Project и имеет все разрешения, приложение также имеет все разрешения.

...