RedirectToAction未重定向到另一个控制器的Get Action



嗨,我有两个控制器及其操作方法和视图。第一个控制器是:

[Authorize]
public class CarController : Controller
{
private readonly ICarService carService;
public EventController(ICarService carService)
{
this.carService= carService;
}
public IActionResult Create() 
=> View();
[HttpPost]
public async Task<IActionResult> Create(CarFormModel carFormModel)
{
if (!ModelState.IsValid)
{
return View(carFormModel);
}
var resultId = await this.eventService
.CreateEventAsync(carFormModel);
TempData["EventId"] = resultId;
return RedirectToAction("Create","Manager");
}

和我的另一个控制器:

[Authorize]
public class ManagerController : Controller
{
private readonly IManagerService managerService;
public ManagerController(IManagerService managerService) 
=> this.managerService= managerService;
public IActionResult Create()
=> View();
[HttpPost]
public async Task<IActionResult> Create(ManagerCreateModel managerCreateModel)
{
var created = await this.managerService
.CreateManagerAsync(managerCreateModel);
if (!created)
{
return View(routeCreateModel);
}
return View("All");
}

如果我成功创建了汽车,那么汽车控制器的创建操作应该将我重定向到ManagerController的创建操作(GET方法/第一个/(,但它将我重定向至第二个(POST方法(。两个控制器的文件夹中都有各自的视图。如何重定向到ManagerController的get方法?

更改操作名称

public IActionResult CreateView()
=> View();

并重定向

return RedirectToAction("CreateView","Manager");

最新更新