Browse Source

Dont force to add details for the IUserFriendlyException

pull/279/head
Halil İbrahim Kalkan 9 years ago
parent
commit
0e44feb203
  1. 12
      src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ExceptionHandling/DefaultExceptionToErrorInfoConverter.cs
  2. 4
      src/Volo.Abp.UI/Volo/Abp/Ui/IUserFriendlyException.cs
  3. 6
      src/Volo.Abp.UI/Volo/Abp/Ui/UserFriendlyException.cs

12
src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ExceptionHandling/DefaultExceptionToErrorInfoConverter.cs

@ -66,9 +66,8 @@ namespace Volo.Abp.AspNetCore.Mvc.ExceptionHandling
if (exception is IUserFriendlyException)
{
var userFriendlyException = exception as IUserFriendlyException;
errorInfo.Message = exception.Message;
errorInfo.Details = userFriendlyException.Details;
errorInfo.Details = (exception as IHasErrorDetails)?.Details;
}
if (exception is IHasValidationErrors)
@ -195,12 +194,13 @@ namespace Volo.Abp.AspNetCore.Mvc.ExceptionHandling
detailBuilder.AppendLine(exception.GetType().Name + ": " + exception.Message);
//Additional info for UserFriendlyException
if (exception is IUserFriendlyException)
if (exception is IUserFriendlyException &&
exception is IHasErrorDetails)
{
var userFriendlyException = exception as IUserFriendlyException;
if (!string.IsNullOrEmpty(userFriendlyException.Details))
var details = ((IHasErrorDetails) exception).Details;
if (!details.IsNullOrEmpty())
{
detailBuilder.AppendLine(userFriendlyException.Details);
detailBuilder.AppendLine(details);
}
}

4
src/Volo.Abp.UI/Volo/Abp/Ui/IUserFriendlyException.cs

@ -1,8 +1,6 @@
using Volo.Abp.ExceptionHandling;
namespace Volo.Abp.UI
{
public interface IUserFriendlyException : IHasErrorDetails
public interface IUserFriendlyException
{
}

6
src/Volo.Abp.UI/Volo/Abp/Ui/UserFriendlyException.cs

@ -10,7 +10,11 @@ namespace Volo.Abp.UI
/// This exception type is directly shown to the user.
/// </summary>
[Serializable]
public class UserFriendlyException : ApplicationException, IHasLogLevel, IHasErrorCode, IUserFriendlyException
public class UserFriendlyException : ApplicationException,
IUserFriendlyException,
IHasLogLevel,
IHasErrorCode,
IHasErrorDetails
{
/// <summary>
/// Additional information about the exception.

Loading…
Cancel
Save