'RedirectToAction' 不重定向到给定的操作

'RedirectToAction' not redirect to given action

我执行了一次插入操作,并将我的控件移动到详细信息页面。 但它没有重定向到详细信息页面并直接给我登录页面。

这是我的代码

[HttpPost]
public ActionResult AddPurchaseOrder(PODetail po)
{
    var createdby = GeneralSession.Username;
    var spresult = Db.Sp_PO_Insert(po.SCODE, po.PONO, po.PODATE, po.POTYPEID, po.MODESP, po.INSURANCE, po.PTERM, po.DESTINATION, po.PackingCharge, po.NOTE1, po.NOTE2, po.NOTE3, po.NOTE4, po.INSPECTION, po.FRAIGHT, po.SALESTYPE, po.PRICEARE, po.OtherAmt, po.OtherDesc, createdby, po.Remarks);
    if (spresult == 2 || spresult == -2)
    {
        if (po.SubPODetails.Count() > 0)
        {
            var src = po.SubPODetails.ToList();
            for (var i = 0; i < po.SubPODetails.Count(); i++)
            {
                var fdata = src[i];
                var poli = i + 1;
                var subresult = Db.Sp_POSub_Insert(po.PONO, fdata.ITEMCODE, fdata.DESCRIPTION, fdata.QTY, fdata.UNITID, fdata.RATE, fdata.DISCOUNT, fdata.DELIVERYDT, fdata.SpecialNote, fdata.QTNNO, fdata.QTNDT, fdata.CGSTPer, fdata.IGSTPer, Convert.ToString(poli));
                if (subresult == 1 || subresult == -1)
                {
                    continue;
                }
                else
                {
                    this.AddToastMessage("Error", "Something went wrong in insert with sub OA", ToastType.Error);
                    break;
                }
            }
        }
        else
        {
            this.AddToastMessage("Error", "Something Went To Wrong!!!", ToastType.Error);
        }
        ModelState.Clear();
        this.AddToastMessage("Success", "Purchase inserted successfully", ToastType.Success);
        return RedirectToAction("PurchaseOrderDetails","Purchase");
    }
    else
    {
        this.AddToastMessage("Error", "Something Went To Wrong!!!", ToastType.Error);
    }
    return RedirectToAction("PurchaseOrderDetails", "Purchase");
}

这是我的 RouteConfig 文件

public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "User", action = "Login", id = UrlParameter.Optional }
        );
    }
}

任何人都可以帮助我为什么 toast 消息没有提醒并且页面没有重定向到给定的操作。 提前谢谢你。

如果您使用 AJAX 呼叫重定向不适用于 AJAX post。 浏览器将忽略对 AJAX POST 的重定向响应。如果在 AJAX 调用 returns 重定向响应时需要重定向,则由您在脚本中重定向。

您的代码似乎没问题。现在需要适当的检查。 将 breakpoint 放入 AddPurchaseOrderPurchaseOrderDetails 操作中。检查它为什么会触发您的注销操作,在注销功能上放置 breakpoint。 可能是您的身份验证检查条件违反或存在一些错误。