C# 将动作验证中的值分配给模型-Dot net core
我试图在模型击中控制器之前为其赋值。例如,我在模型上有一个userid字段,我需要集中分配它,这就是为什么我在asp.net核心中实现了验证过滤器。 这就是我如何实现的C# 将动作验证中的值分配给模型-Dot net core,c#,.net-core,C#,.net Core,我试图在模型击中控制器之前为其赋值。例如,我在模型上有一个userid字段,我需要集中分配它,这就是为什么我在asp.net核心中实现了验证过滤器。 这就是我如何实现的 public class ActionFilter : ActionFilterAttribute, IActionFilter { private int branchId = 0; private int userId = 0; public override void OnActionExecut
public class ActionFilter : ActionFilterAttribute, IActionFilter
{
private int branchId = 0;
private int userId = 0;
public override void OnActionExecuted(ActionExecutedContext context)
{
var result = context.Result;
if (result != null)
{
InternalDataViewModel model = new InternalDataViewModel();
var viewResult = result as BaseViewModel;
if (model != null)
{
model.BranchId = 10;
model.UserId = 10;
}
}
}
public override void OnActionExecuting(ActionExecutingContext context)
{
}
}
在这里,我想为InternalDataViewModel类分配一个值,但这并没有按预期工作。我怎样才能做到这一点请帮帮我伙计们你们到底为什么要做这样的事?还有其他选项,例如,如果object@Fabjan-我将从HttpContext获取该用户id,这样我就不必每次都分配用户id,而且什么东西没有按预期工作?顺便说一句,在action方法之后调用ActionExecuted,这意味着它已经“命中”了控制器。尝试将代码移动到操作执行上,你到底为什么需要做这样的事情?还有其他选项,例如,如果object@Fabjan-我将从HttpContext获取该用户id,这样我就不必每次都分配用户id,而且什么东西没有按预期工作?顺便说一句,在action方法之后调用ActionExecuted,这意味着它已经“命中”了控制器。尝试将代码移动到操作执行中的
OnActionExecuting