Fast.UnifyResult 公开 API
目标 net8.0;net9.0;net10.0。本页为语法声明与 XML 注释参考,运行示例和边界见模块用法。
源码提交:43554c07f6c216f80b509bd535c0a5b66ae7f2e8。维护流程:scripts/export-dotnet-api.ps1;普通站点构建直接消费此文件。
Fast.UnifyResult.NonUnifyAttribute
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
[AttributeUsage(AttributeTargets.Method | AttributeTargets.Class)]
public sealed class NonUnifyAttribute : Attribute禁止规范化处理
Fast.UnifyResult.NonValidationAttribute
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
[AttributeUsage(AttributeTargets.Method | AttributeTargets.Class)]
public sealed class NonValidationAttribute : Attribute跳过验证
Fast.UnifyResult.UnifyContext
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public static class UnifyContext规范化结果上下文
Fast.UnifyResult.UnifyContext.EnabledUnifyHandler = false
源码 · 目标:net8.0、net9.0、net10.0
public static bool EnabledUnifyHandler = false;是否启用规范化结果
Fast.UnifyResult.UnifyContext.UnifyResultType
源码 · 目标:net8.0、net9.0、net10.0
public static Type UnifyResultType { get; }统一返回类型
Fast.UnifyResult.UnifyContext.HandleRestfulStatusCode
源码 · 目标:net8.0、net9.0、net10.0
public static RestfulResult<object> HandleRestfulStatusCode(int code, object data, string message, HttpContext httpContext)处理 Restful 响应状态码
- 参数
code:业务或枚举编码 - 参数
data:要处理或传输的数据 - 参数
message:要记录或返回的消息 - 参数
httpContext:当前请求上下文 - 返回:处理 Restful 响应状态码
Fast.UnifyResult.UnifyContext.GetRestfulResult
源码 · 目标:net8.0、net9.0、net10.0
public static RestfulResult<object> GetRestfulResult(int code, bool success, object data, object message,
HttpContext httpContext)获取规范化 RESTful 风格返回值
- 参数
code:业务或枚举编码 - 参数
success:操作是否成功 - 参数
data:要处理或传输的数据 - 参数
message:要记录或返回的消息 - 参数
httpContext:当前请求上下文 - 返回:获取到的规范化 RESTful 风格返回值
Fast.UnifyResult.IServiceCollectionExtension
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public static class IServiceCollectionExtension为 IServiceCollection 提供统一返回扩展方法
Fast.UnifyResult.IServiceCollectionExtension.AddDataValidation
源码 · 目标:net8.0、net9.0、net10.0
public static IServiceCollection AddDataValidation(this IServiceCollection services)数据验证服务
- 参数
services:要添加服务的服务集合 - 返回:返回
services,便于链式调用
Fast.UnifyResult.IServiceCollectionExtension.AddFriendlyException
源码 · 目标:net8.0、net9.0、net10.0
public static IServiceCollection AddFriendlyException(this IServiceCollection services)友好异常服务
- 参数
services:要添加服务的服务集合 - 返回:返回
services,便于链式调用
Fast.UnifyResult.IServiceCollectionExtension.AddUnifyResult
源码 · 目标:net8.0、net9.0、net10.0
public static IServiceCollection AddUnifyResult(this IServiceCollection services)添加统一返回服务
- 参数
services:要添加服务的服务集合 - 返回:返回
services,便于链式调用
Fast.UnifyResult.IGlobalExceptionHandler
源码 · 目标:net8.0、net9.0、net10.0
public interface IGlobalExceptionHandler全局异常处理
Fast.UnifyResult.IGlobalExceptionHandler.OnExceptionAsync
源码 · 目标:net8.0、net9.0、net10.0
Task OnExceptionAsync(ExceptionContext context, bool isUserFriendlyException, bool isValidationException);异常拦截
- 参数
context:当前异常处理上下文 - 参数
isUserFriendlyException:是否将异常作为可直接展示给用户的异常处理 - 参数
isValidationException:是否将异常作为参数验证异常处理 - 返回:表示异步“异常拦截”操作的任务
Fast.UnifyResult.ExceptionMetadata
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public sealed class ExceptionMetadata异常元数据
Fast.UnifyResult.ExceptionMetadata.StatusCode
源码 · 目标:net8.0、net9.0、net10.0
public int StatusCode { get; set; }状态码
Fast.UnifyResult.ExceptionMetadata.ErrorCode
源码 · 目标:net8.0、net9.0、net10.0
public object ErrorCode { get; set; }错误码
Fast.UnifyResult.ExceptionMetadata.OriginErrorCode
源码 · 目标:net8.0、net9.0、net10.0
public object OriginErrorCode { get; set; }原始错误码(未被覆盖的 ErrorCode)
Fast.UnifyResult.ExceptionMetadata.Errors
源码 · 目标:net8.0、net9.0、net10.0
public object Errors { get; set; }错误对象(信息)
Fast.UnifyResult.ExceptionMetadata.Data
源码 · 目标:net8.0、net9.0、net10.0
public object Data { get; set; }额外数据
Fast.UnifyResult.ValidationMetadata
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public sealed class ValidationMetadata验证信息元数据
Fast.UnifyResult.ValidationMetadata.ValidationResult
源码 · 目标:net8.0、net9.0、net10.0
public object ValidationResult { get; set; }验证结果
说明:返回字典或字符串类型
Fast.UnifyResult.ValidationMetadata.Message
源码 · 目标:net8.0、net9.0、net10.0
public string Message { get; set; }异常消息
Fast.UnifyResult.ValidationMetadata.ModelState
源码 · 目标:net8.0、net9.0、net10.0
public ModelStateDictionary ModelState { get; set; }验证状态
Fast.UnifyResult.ValidationMetadata.ErrorCode
源码 · 目标:net8.0、net9.0、net10.0
public object ErrorCode { get; set; }错误码
Fast.UnifyResult.ValidationMetadata.OriginErrorCode
源码 · 目标:net8.0、net9.0、net10.0
public object OriginErrorCode { get; set; }原始错误码(未被覆盖的 ErrorCode)
Fast.UnifyResult.ValidationMetadata.StatusCode
源码 · 目标:net8.0、net9.0、net10.0
public int? StatusCode { get; set; }状态码
Fast.UnifyResult.ValidationMetadata.FirstErrorProperty
源码 · 目标:net8.0、net9.0、net10.0
public string FirstErrorProperty { get; set; }首个错误属性
Fast.UnifyResult.ValidationMetadata.FirstErrorMessage
源码 · 目标:net8.0、net9.0、net10.0
public string FirstErrorMessage { get; set; }首个错误消息
Fast.UnifyResult.ValidationMetadata.Data
源码 · 目标:net8.0、net9.0、net10.0
public object Data { get; set; }额外数据
Fast.UnifyResult.IUnifyResponseProvider
源码 · 目标:net8.0、net9.0、net10.0
public interface IUnifyResponseProvider规范化响应数据提供器
Fast.UnifyResult.IUnifyResponseProvider.ResponseExceptionAsync
源码 · 目标:net8.0、net9.0、net10.0
Task<(int statusCode, string message)> ResponseExceptionAsync(ExceptionContext context, ExceptionMetadata metadata,
HttpContext httpContext);响应异常处理
- 参数
context:当前异常处理上下文 - 参数
metadata:异常响应使用的元数据 - 参数
httpContext:当前请求上下文 - 返回:表示异步响应异常处理的任务,任务结果为响应异常处理
Fast.UnifyResult.IUnifyResponseProvider.ResponseValidationExceptionAsync
源码 · 目标:net8.0、net9.0、net10.0
Task ResponseValidationExceptionAsync(ActionExecutingContext context, ValidationMetadata metadata, HttpContext httpContext);响应数据验证异常处理
- 参数
context:当前操作上下文 - 参数
metadata:验证失败响应使用的元数据 - 参数
httpContext:当前请求上下文 - 返回:表示异步“响应数据验证异常处理”操作的任务
Fast.UnifyResult.IUnifyResponseProvider.ResponseDataAsync
源码 · 目标:net8.0、net9.0、net10.0
Task<object> ResponseDataAsync(long timestamp, object data, HttpContext httpContext);响应数据处理
说明:只有响应成功且为正常返回才会调用
- 参数
timestamp:时间戳 - 参数
data:要处理或传输的数据 - 参数
httpContext:当前请求上下文 - 返回:表示异步响应数据处理的任务,任务结果为响应数据处理
Fast.UnifyResult.IUnifyResultProvider
源码 · 目标:net8.0、net9.0、net10.0
public interface IUnifyResultProvider规范化结果提供器
Fast.UnifyResult.IUnifyResultProvider.OnException
源码 · 目标:net8.0、net9.0、net10.0
IActionResult OnException(ExceptionContext context, ExceptionMetadata metadata, int? statusCode = null,
string message = null);异常返回值
- 参数
context:当前异常处理上下文 - 参数
metadata:异常响应使用的元数据 - 参数
statusCode:HTTP 状态码 - 参数
message:要记录或返回的消息 - 返回:异常返回值
Fast.UnifyResult.IUnifyResultProvider.OnSucceeded
源码 · 目标:net8.0、net9.0、net10.0
IActionResult OnSucceeded(ActionExecutedContext context, object data);成功返回值
- 参数
context:当前操作上下文 - 参数
data:要处理或传输的数据 - 返回:成功返回值
Fast.UnifyResult.IUnifyResultProvider.OnValidateFailed
源码 · 目标:net8.0、net9.0、net10.0
IActionResult OnValidateFailed(ActionExecutingContext context, ValidationMetadata metadata);验证失败返回值
- 参数
context:当前操作上下文 - 参数
metadata:验证失败响应使用的元数据 - 返回:验证失败返回值
Fast.UnifyResult.IUnifyResultProvider.OnResponseStatusCodes
源码 · 目标:net8.0、net9.0、net10.0
Task OnResponseStatusCodes(HttpContext httpContext, int statusCode);拦截返回状态码
- 参数
httpContext:当前请求上下文 - 参数
statusCode:HTTP 状态码 - 返回:表示异步“拦截返回状态码”操作的任务
Fast.UnifyResult.BadPageResult
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public class BadPageResult : StatusCodeResult错误页面
Fast.UnifyResult.BadPageResult.Title
源码 · 目标:net8.0、net9.0、net10.0
public string Title { get; set; } = "ModelState Invalid";标题
Fast.UnifyResult.BadPageResult.Description
源码 · 目标:net8.0、net9.0、net10.0
public string Description { get; set; } = "User data verification failed. Please input it correctly.";描述
Fast.UnifyResult.BadPageResult.Base64Icon
源码 · 目标:net8.0、net9.0、net10.0
public string Base64Icon { get; set; } =
"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE0LjIxIDEzLjVsMS43NjcgMS43NzMtLjcwNC43MDRMMTMuNSAxNC4yMWwtMS43NzMgMS43NzMtLjcwNC0uNzEgMS43NzQtMS43NzQtMS43NzQtMS43NzMuNzA0LS43MDQgMS43NzMgMS43NzQgMS43NzMtMS43NzQuNzA0LjcxMUwxNC4yMSAxMy41ek0yIDE1aDh2MUgxVjBoOC43MUwxNCA0LjI5VjEwaC0xVjVIOVYxSDJ2MTR6bTgtMTFoMi4yOUwxMCAxLjcxVjR6IiBmaWxsPSIjMTAxMDEwIi8+PC9zdmc+";图标
说明:必须是 base64 类型
Fast.UnifyResult.BadPageResult.Code
源码 · 目标:net8.0、net9.0、net10.0
public string Code { get; set; } = "";错误代码
Fast.UnifyResult.BadPageResult.CodeLang
源码 · 目标:net8.0、net9.0、net10.0
public string CodeLang { get; set; } = "json";错误代码语言
Fast.UnifyResult.BadPageResult.Status401Unauthorized
源码 · 目标:net8.0、net9.0、net10.0
public static BadPageResult Status401Unauthorized { get; }返回通用 401 错误页
Fast.UnifyResult.BadPageResult.Status403Forbidden
源码 · 目标:net8.0、net9.0、net10.0
public static BadPageResult Status403Forbidden { get; }返回通用 403 错误页
Fast.UnifyResult.BadPageResult.Status404NotFound
源码 · 目标:net8.0、net9.0、net10.0
public static BadPageResult Status404NotFound { get; }返回通用 404 错误页
Fast.UnifyResult.BadPageResult.Status500InternalServerError
源码 · 目标:net8.0、net9.0、net10.0
public static BadPageResult Status500InternalServerError { get; }返回通用 500 错误页
Fast.UnifyResult.BadPageResult.BadPageResult
源码 · 目标:net8.0、net9.0、net10.0
public BadPageResult() : base(400)初始化默认返回 HTTP 400 的错误页结果
Fast.UnifyResult.BadPageResult.BadPageResult
源码 · 目标:net8.0、net9.0、net10.0
public BadPageResult(int statusCode) : base(statusCode)使用指定 HTTP 状态码初始化错误页结果
- 参数
statusCode:要写入响应的 HTTP 状态码
Fast.UnifyResult.BadPageResult.ExecuteResult
源码 · 目标:net8.0、net9.0、net10.0
public override void ExecuteResult(ActionContext context)说明继承自接口或基类,需结合对应声明阅读。
Fast.UnifyResult.BadPageResult.ToString
源码 · 目标:net8.0、net9.0、net10.0
public override string ToString()说明继承自接口或基类,需结合对应声明阅读。
Fast.UnifyResult.RestfulResult
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public class RestfulResult<T>RESTful 风格返回格式
- 类型参数
T:该类型处理的值类型
Fast.UnifyResult.RestfulResult.Success
源码 · 目标:net8.0、net9.0、net10.0
public bool Success { get; set; }执行成功
Fast.UnifyResult.RestfulResult.Code
源码 · 目标:net8.0、net9.0、net10.0
public int? Code { get; set; }状态码
Fast.UnifyResult.RestfulResult.Message
源码 · 目标:net8.0、net9.0、net10.0
public object Message { get; set; }错误信息
Fast.UnifyResult.RestfulResult.Data
源码 · 目标:net8.0、net9.0、net10.0
public T Data { get; set; }数据
Fast.UnifyResult.RestfulResult.Timestamp
源码 · 目标:net8.0、net9.0、net10.0
public long Timestamp { get; set; }时间戳
