src/KopSoftWms/Attributes/OperationLogAttribute.cs
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using IServices;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Filters;
using Microsoft.Extensions.Configuration;
using System;
using System.Linq;
using System.Security.Claims;
using YL.Core.Entity.Fluent.Validation;
using YL.Utils.Env;
using YL.Utils.Extensions;
using YL.Utils.Http;
using YL.Utils.Pub;
namespace YL.NetCore.Attributes
{
public sealed class OperationLogAttribute : ResultFilterAttribute
{
public bool Ignore { get; set; } = true;
public LogType LogType { get; set; }
public OperationLogAttribute()
{
}
public OperationLogAttribute(bool ignore)
{
Ignore = ignore;
}
public OperationLogAttribute(LogType logType)
{
LogType = logType;
}
public OperationLogAttribute(bool ignore, LogType logType)
{
Ignore = ignore;
LogType = logType;
}
public override void OnResultExecuting(ResultExecutingContext context)
{
var services = context.HttpContext.RequestServices;
var config = services.GetService(typeof(IConfiguration)) as IConfiguration;
var claims = context.HttpContext.User.Claims;
string flag = config["Log:operationlog"];
if (string.IsNullOrWhiteSpace(flag))
{
flag = "false";
}
if (flag.Equals("true", StringComparison.OrdinalIgnoreCase))
{
if (Ignore)
{//传入参数
var parameters = context.ReadResultExecutingContext();
//result
var result = context.Result;
object res = null;
if (result is ObjectResult objectResult)
{
后面还有 74 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。