gpt4 book ai didi

c# - 如何从 MVC 中的父 Controller 返回 View

转载 作者:行者123 更新时间:2023-11-30 22:21:15 25 4
gpt4 key购买 nike

我知道如何从父 Controller 进行重定向,假设我有

public class _ParentController : Controller {  
...
}

public class HomeController : _ParentController {
...
}

我可以向 _ParentController 添加一个方法:

protected override void OnActionExecuting(ActionExecutingContext filterContext) {
if (condition) {
filterContext.Result = Redirect(path);
}
}

现在我需要返回一个 View 或执行 Server.Transfer(我需要保留 url)。 Server.TransferRequest 在这种情况下对我不起作用,还有其他方法可以满足我的需要吗?我使用 .NET MVC3 和 IIS7.5

谢谢。

最佳答案

例如你可以有:

protected override void OnException(ExceptionContext filterContext)
{
base.OnException(filterContext);
if (((filterContext.Exception is SecurityException)) ||
((filterContext.Exception is AuthenticationException)))
{
filterContext.ExceptionHandled = true;

filterContext.Result = View("Error", "You don't have permission");
}
}

这会将操作结果设置为您选择的 View ,并保留当前 url。 (请记住,必须根据当前路径或共享文件夹在文件夹中找到 View )

filterContext.Result = View("Name of view", "object model")';

关于c# - 如何从 MVC 中的父 Controller 返回 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14499268/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com