* `BusinessException`: Indicates a business exception (rather than infrastructure exceptions). You can instead implement the `IBusinessException` interface.
* `UserFriendlyException`: Indicates an exception that can be **directly shown to the user** (without hiding or localizing). You can instead implement the `IUserFriendlyException` interface.
Pre-Defined Base Exception Classes
### Built-In Exceptions
Standard Exception classes (AbpValidationException)
Some exception types are automatically thrown by the framework.
Exception Localization
* `AbpAuthorizationException` is thrown if the current user has no permission to perform the requested operation. See authorization document (TODO: link) for more.
* `AbpValidationException` is thrown if the input of the current request is not valid. See validation document (TODO: link) for more.
* `EntityNotFoundException` is thrown if the requested entity is not available. This is mostly thrown by [repositories](Repositories.md).
HTTP Status Code Mapping
You can also throw these type of exceptions in your code (while it's rarely needed).