Я пытаюсь назначить пользователя задаче с помощью Microsoft Graph API для доступа к Планировщику. Мой код работает нормально, когда я не пытаюсь кого-то назначить (не указав раздел assignments
), но когда я добавляю раздел назначений (следуя шаблону здесь) Я получаю сообщение об ошибке BadRequest
.
{"error": {"code": "", "message": "Запрос недействителен: \ r \ nЗначение не может быть пустым. \ r \ nParameter name: QualifiedName", "innerError": {"request-id" : "...", "date": "2018-01-30T12: 23: 59"}}}
public TaskResponse CreateTask(string planId, string bucketId, string title, Dictionary<string, Assignment> assignments = null, DateTime? dueDateTime = null)
{
RestRequest TaskRequest = new RestRequest("planner/tasks", Method.POST)
{
RequestFormat = DataFormat.Json
};
Dictionary<string, object> assignees = new Dictionary<string, object>();
foreach(string assignment in assignments.Keys)
{
assignees.Add(assignment, new
{
});
}
var body = new
{
planId,
bucketId,
title,
assignments = assignees,
dueDateTime
};
TaskRequest.AddParameter("application/json", JsonConvert.SerializeObject(body), "application/json", ParameterType.RequestBody);
IRestResponse TaskResponse = GraphClient.Execute(TaskRequest);
if (!TaskResponse.IsSuccessful)
{
return null;
}
var result = JsonConvert.DeserializeObject<TaskResponse>(TaskResponse.Content);
return result;
}
Буду признателен, если кто-нибудь знает, почему в ответе указано, что я не предоставил параметр, который никогда не упоминается в документации ...
@odata.type
из правопреемника, который воспроизвел мою проблему. Как я могу передать это имя параметра (оно содержит специальные символы, такие как@
и.
) в анонимном типе? Он должен войти в пустой объект в цикле foreach. - person Peter Gordon   schedule 30.01.2018