I created a CrudAppService. When I invoke its dynamic API by using swagger, I get a generic 500 error with this description:
Check error in Logs.txt.
From the documentation on Logging:
Configuration
All configuration is done for Log4Net when you create your application from ASP.NET Boilerplate templates.
...
It's defined in the log4net.config file of the application as shown below:
<?xml version="1.0" encoding="utf-8" ?> <log4net> <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender" > <file value="Logs/Logs.txt" />
You can simply send the exception details to the client by enabling one of ABP's configurations (SendAllExceptionsToClients) in ***.Web.Core Module, like this:
public override void PreInitialize()
{
Configuration.Modules.AbpWebCommon().SendAllExceptionsToClients = true;
}
Then you get the exception details on the client. Recommended only during development.
If you use CurrentUnitOfWork, you can catch the exception also and using
UserFriendlyException you can throw the desired exception. UserFriendlyException is a specific type of exception so ABP directly shows exception message to the end user.
Example:
try
{
await _repository.InsertAsync(...);
await CurrentUnitOfWork.SaveChangesAsync();
}
catch(Exception ex)
{
throw new UserFriendlyException("user friendly exception message");
}