public async Task<long> CountWhereAsync(string schemaName, string tableName, [FromBody] List<Filter> filters)
{
try
{
var repository = new FormRepository(schemaName, tableName, this.AppUser.Tenant, this.AppUser.LoginId, this.AppUser.UserId);
return await repository.CountWhereAsync(filters).ConfigureAwait(false);
}
catch(UnauthorizedException)
{
throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.Forbidden));
}
catch(DataAccessException ex)
{
throw new HttpResponseException
(
new HttpResponseMessage
{
Content = new StringContent(ex.Message),
StatusCode = HttpStatusCode.InternalServerError
});
}
#if !DEBUG
catch
{
throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.InternalServerError));
}
#endif
}