簡體   English   中英

.Net Core MVC | 如何重定向回調用頁面

[英].Net Core MVC | How to redirect back to the calling page

我的 CRUD 應用程序有問題,我有兩個 CRUD,一個用於產品,另一個用於類別。 當我編輯產品時,我有一個包含類別的下拉列表和一個操作鏈接(+ 添加類別)以重定向到類別 controller 操作以添加新類別。 我的問題是,一旦我單擊添加新類別,我就會被重定向到另一個 controller 類別/創建,並在提交新類別后轉到類別/索引。 我想把它 go 返回到編輯過的產品,例如。 產品/編輯/5。 我不知道如何接近。 我在歷史上使用了 JS 腳本 onClick 到 go -1,但這不是正確的解決方案。

這是我對類別 Controller 的 ActionResult。

    public async Task<IActionResult> Create([Bind("Id,Name")] Category category)
    {
        var categoryList = _context.Categories.ToList();

        if (ModelState.IsValid)
        {
            foreach (var item in categoryList)
            {
                if (category.Name.Trim() == item.Name)
                {
                    ModelState.AddModelError("Name", "Already Exists!");
                    return View();
                }
            }
            _context.Add(category);
            
            await _context.SaveChangesAsync();
        }
            return RedirectToAction(nameof(Index));
    }

我的觀點

 This is my View <form asp-action="Create"> <div asp-validation-summary="ModelOnly" class="text-danger"></div> <div class="form-group"> <label asp-for="Name" class="control-label"></label> <input asp-for="Name" class="form-control" /> <span asp-validation-for="Name" class="text-danger"></span> </div> <div class="form-group"> <input type="submit" value="Create" class="btn btn-primary"/> </div> </form>

.Net Core 3.1中,只需將此行放在 controller 方法中即可重定向到上一頁

return Redirect(HttpContext.Request.Headers["Referer"]);

這就是你所需要的......檢查一下

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM