带有.net后端的Azure移动服务获得异常

本文关键字:服务 异常 移动 Azure net 后端 带有 | 更新日期: 2023-09-27 18:05:25

添加具有子实体(1:n)的实体时,我得到一个异常。只有当调试器捕获所有异常时,我才能获得此异常。不幸的是,只有异常消息是可见的,而不是包含我需要的信息的异常本身。(System.Data.Entity.Validation.DbEntityValidationException)(当插入没有子实体时,服务工作正常)

客户端得到MobileServiceInvalidOperationException:请求无法完成。(坏的请求)

控制器上的方法(PatchAppointment)是唯一的方法,我可以添加exceptionhandling和异常不在这里。

 public Task<Appointment> PatchAppointment(string id, Delta<Appointment> patch)
    {
        try
        {
            return UpdateAsync(id, patch);
        }
        catch (Exception ex)
        {
            // not coming through here..
            throw;
        }             
    }

我还尝试在Httpconfiguration中添加ExceptionLogger。服务,但没有例外。

我应该如何得到整个异常对象看到EntityValidationErrors?当知道这一点时,我还可以在发生异常时添加日志记录。

带有.net后端的Azure移动服务获得异常

你可以添加异常处理的"唯一方法中的PatchAppointment"是什么意思?如果你有麻烦插入你必须检查PostAppointment而不是PatchAppointment。当你提到你在插入表时遇到麻烦时,PatchAppointment处理更新数据。

public async Task<IHttpActionResult> PostAppointment(Appointment item)
{
    Appointment current = await InsertAsync(item);
    return CreatedAtRoute("Tables", new { id = current.Id }, current);
}