我遇到了一个问题,try/catch块中的一个非常短的代码块没有捕获异常。例如,如果我试图将一个null值插入到数据库中的一个不可为null的字段中,异常将被记录到宿主项目的日志文件中,但我在调试时无法捕获它。您知道为什么会发生这种情况吗?以下是代码:
public override async Task<ReportDTO> CreateAsync(CreateReportDTO input)
{
try
{
input.UserId = (Guid)CurrentUser.Id;
var report = await base.CreateAsync(input);
return report;
}
catch (Exception ex)
{
throw;
}
}
1条答案
按热度按时间hivapdat1#
在通过AbpValidationActionFilter调用CreateAsync之前引发该异常。
如果要绕过验证,可以使用[DisableValidation]属性。
有关详细信息,请参阅https://docs.abp.io/en/abp/latest/Validation#validation-infrastructure