好的。所以我有一个问题,我需要在控制器操作中进行一些授权检查。ASP.Net MVC从控制器的局部视图重定向到不同控制器的全视图
有授权的角色,但它可能存在一些别人TypeOnePayment,但不TypeTwo
[Authorize(Roles = "TypeOnePayment;TypeTwoPayment")]
public ActionResult EnterRevenue(PaymentType payment)
{
payment = "TypeOne"; // This exists for show only.
var permission = string.Concat(payment,"Permission");
if (!SecurityUtility.HasPermission(permission))
{
return View("Unauthorized", "Error");
}
return this.PartialView("_EnterRevenue");
}
但由于这是返回的局部视图,“错误”屏幕只出现在局部视图部分这一页。有没有办法重定向到一个全新的页面?
编辑:EnterRevenue通过ajax调用正在检索。所以只是html被返回,它被放置在它被调用的视图中。
你在哪里使用这个局部视图?在ajax或Html.Action? – 2014-10-29 18:59:07
它使用ajax调用进行检索,并在调用成功时将新的html插入到html中。 – ELepolt 2014-10-29 19:07:14
你应该读这:http://stackoverflow.com/questions/199099/how-to-manage-a-redirect-request-after-a-jquery-ajax-call – 2014-10-29 19:28:11