From 0e44feb203bfbd761f943310e3c3754ff2c89776 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Sat, 28 Apr 2018 22:20:43 +0300 Subject: [PATCH] Dont force to add details for the IUserFriendlyException --- .../DefaultExceptionToErrorInfoConverter.cs | 12 ++++++------ .../Volo/Abp/Ui/IUserFriendlyException.cs | 4 +--- src/Volo.Abp.UI/Volo/Abp/Ui/UserFriendlyException.cs | 6 +++++- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ExceptionHandling/DefaultExceptionToErrorInfoConverter.cs b/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ExceptionHandling/DefaultExceptionToErrorInfoConverter.cs index 88aa4749ad..fa48d0d43c 100644 --- a/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ExceptionHandling/DefaultExceptionToErrorInfoConverter.cs +++ b/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); } } diff --git a/src/Volo.Abp.UI/Volo/Abp/Ui/IUserFriendlyException.cs b/src/Volo.Abp.UI/Volo/Abp/Ui/IUserFriendlyException.cs index 91885c1e91..8b6b1fdc8d 100644 --- a/src/Volo.Abp.UI/Volo/Abp/Ui/IUserFriendlyException.cs +++ b/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 { } diff --git a/src/Volo.Abp.UI/Volo/Abp/Ui/UserFriendlyException.cs b/src/Volo.Abp.UI/Volo/Abp/Ui/UserFriendlyException.cs index 1991fb4011..058f5cd441 100644 --- a/src/Volo.Abp.UI/Volo/Abp/Ui/UserFriendlyException.cs +++ b/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. /// [Serializable] - public class UserFriendlyException : ApplicationException, IHasLogLevel, IHasErrorCode, IUserFriendlyException + public class UserFriendlyException : ApplicationException, + IUserFriendlyException, + IHasLogLevel, + IHasErrorCode, + IHasErrorDetails { /// /// Additional information about the exception.