如何从一个Razor页面重定向到另一个

时间:2018-03-22 21:39:44

标签: asp.net-core razor-pages

我有一个名为Page1的页面。

gid2=H5Gcreate(gid,'bar',H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);内部我检查一个参数,在某些情况下想要将用户路由到另一个页面。

页面位于此处:

页/应用/ App.cshtml

我试过这个:

OnGet(string parameter1)

但是用户没有被重定向。如果重定向不存在,它只显示与预期相同的页面。我希望他们看到App页面。

那么如何重定向到App页面呢?

2 个答案:

答案 0 :(得分:1)

这是有用的:

public async Task<IActionResult> OnGet(string web_registration_key)
{
  //Check parameter here

    if(doRedirect)
    {
       return RedirectToPage("/App/App")
    }

  }

  return null;

}

返回null似乎很奇怪,但不确定还有什么要返回。

答案 1 :(得分:0)

我使用了返回Page();

以下是我的项目中的一个示例:

    public IActionResult OnGet(int id)
    {
        var MenuItemFromDb = _db.MenuItem.Include(m => m.CategoryType).Include(m => m.FoodType)
                .Where(x => x.Id == id).FirstOrDefault();

        if (MenuItemFromDb == null)
        {
            return RedirectToPage("./Index");
        }
        else
        {
            ShowCart(id);
            return Page();
        }
    }

    private void ShowCart(int id)
    {
        var MenuItemFromDb = _db.MenuItem.Include(m => m.CategoryType).Include(m => m.FoodType)
            .Where(x => x.Id == id).FirstOrDefault();

        CartObj = new ShoppingCart()
        {
            MenuItemId = MenuItemFromDb.Id,
            MenuItem = MenuItemFromDb
        };
    }