using System.Diagnostics.CodeAnalysis;
namespace System.Application.Services
{
///
/// 操作结果信息类,对操作结果进行封装
///
///
public abstract class OperationResultBase
{
#region 构造函数
public OperationResultBase()
{
ResultType = OperationResultType.Error;
}
///
/// 初始化一个 操作结果信息类 的新实例
///
/// 操作结果类型
public OperationResultBase(OperationResultType resultType)
{
ResultType = resultType;
}
///
/// 初始化一个 定义返回消息的操作结果信息类 的新实例
///
/// 操作结果类型
/// 返回消息
public OperationResultBase(OperationResultType resultType, string message)
: this(resultType)
{
Message = message;
}
///
/// 初始化一个 定义返回消息与附加数据的操作结果信息类 的新实例
///
/// 操作结果类型
/// 返回消息
/// 返回数据
public OperationResultBase(OperationResultType resultType, string message, T appendData)
: this(resultType, message)
{
AppendData = appendData;
}
///
/// 初始化一个 定义返回消息与日志消息的操作结果信息类 的新实例
///
/// 操作结果类型
/// 返回消息
/// 日志记录消息
public OperationResultBase(OperationResultType resultType, string message, string logMessage)
: this(resultType, message)
{
LogMessage = logMessage;
}
///
/// 初始化一个 定义返回消息、日志消息与附加数据的操作结果信息类 的新实例
///
/// 操作结果类型
/// 返回消息
/// 日志记录消息
/// 返回数据
public OperationResultBase(OperationResultType resultType, string message, string logMessage, T appendData)
: this(resultType, message, logMessage)
{
AppendData = appendData;
}
#endregion
#region 属性
///
/// 获取或设置 操作结果类型
///
public OperationResultType ResultType { get; set; }
///
/// 获取或设置 操作返回信息
///
public string? Message { get; set; }
///
/// 获取或设置 操作返回的日志消息,用于记录日志
///
public string? LogMessage { get; set; }
///
/// 获取或设置 操作结果附加信息
///
public abstract T? AppendData { get; set; }
#endregion
}
///
public class OperationResult : OperationResultBase