При добавлении сущности с дочерним объектом (1: n) я получаю исключение. Я могу получить это исключение только тогда, когда отладчик ловит все исключения. К сожалению, только сообщение об исключении видно, а не само исключение с необходимой мне информацией. (System.Data.Entity.Validation.DbEntityValidationException) (при вставке объекта без дочерних элементов служба работает правильно)
Клиент получает исключение MobileServiceInvalidOperationException: запрос не может быть выполнен. (Неверный запрос)
Метод контроллера (PatchAppointment) является единственным методом, в котором я могу добавить обработку исключений, и исключение не входит сюда.
public Task<Appointment> PatchAppointment(string id, Delta<Appointment> patch)
{
try
{
return UpdateAsync(id, patch);
}
catch (Exception ex)
{
// not coming through here..
throw;
}
}
Я также попытался добавить ExceptionLogger в Httpconfiguration.Services, но никаких исключений не приходит.
Как я могу получить весь объект исключения для просмотра EntityValidationErrors? Когда это известно, я могу добавить журнал, когда происходят исключения.
Что вы подразумеваете под "PatchAppointment в единственном методе", что вы можете добавить обработку исключений? Если у вас возникли проблемы с вставкой, вам нужно проверить PostAppointment, а не PatchAppointment. PatchAppointment занимается обновлением данных, пока вы упомянули, что у вас есть проблемы с вставкой в таблицу.
public async Task<IHttpActionResult> PostAppointment(Appointment item)
{
Appointment current = await InsertAsync(item);
return CreatedAtRoute("Tables", new { id = current.Id }, current);
}