каким образом я могу передавать данные с одного контроллера на другой?
У меня есть это действие CheckReservation в HomeController:
public class HomeController : Controller
{
public readonly ICarRepository _repository;
public HomeController(ICarRepository repository)
{
_repository = repository;
}
public IActionResult Index()
{
return View();
}
[HttpPost]
public IActionResult CheckReservation(Reservation reservation)
{
List<Car> availableCars = _repository.GetAvailableCars.Where(c => c.Location == reservation.PickUpLocation && c.Available);
return RedirectToAction("List", "Car", availableCars);
}
}
И у меня есть это действие Список в CarController:
public class CarController : Controller
{
private readonly ICarRepository _repository;
public CarController(ICarRepository repository)
{
_repository = repository;
}
[HttpPost]
public IActionResult List(List<Car> cars = null)
{
if(ModelState.IsValid)
{
if(cars == null)
{
var carsListViewModel = new CarsListViewModel
{
Cars = _repository.GetAllCars
};
return View(carsListViewModel);
}
else
{
return View(cars);
}
}
return NotFound();
}
public IActionResult Detail(int id)
{
var car = _repository.GetAllCars.FirstOrDefault(c => c.Id == id);
return View(car);
}
}
Я попробовал этот способ, но у меня только список автомобилей без каких-либо элементов. Как правильно передавать данные между контроллерами?
Редактировать: Здесь найдено решение: ссылка