Обновление частичного представления или перенаправление в другое представление в зависимости от состояния модели - PullRequest
2 голосов
/ 08 июня 2019

У меня есть модальное всплывающее окно, содержащее форму, которая открывается после нажатия на кнопку.Я хотел бы быть перенаправлен на домашнюю страницу, если состояние модели является действительным, в противном случае я бы хотел, чтобы содержимое формы обновлялось с ошибками, если оно недействительно.

В настоящее время у меня есть код ниже, яне могу найти что-то лучшее.Проблема в том, что, если модель верна, домашняя страница загружается в модальное всплывающее окно из-за UpdateTargetId, указанного в функции Ajax.BeginForm.

Это представляет содержимое, которое я имею в теле моего модального всплывающего окна.окно:

@using (Ajax.BeginForm("CreateTask", "Accueil", new AjaxOptions { HttpMethod = "POST", UpdateTargetId = "partialCreateTask", InsertionMode = InsertionMode.Replace }))
{
...
}

Вот функция, вызываемая в контроллере:

 public async Task<ActionResult> CreateTask([Bind(Include = "Titre,Description,Echeance")] T_Tache t_tache)
    {
        if (ModelState.IsValid)
        {
            var db = new My_DBEntities();

            t_tache.IdStatutTache = DataAccess_SELECT.GetIdOfTaskName(new Socfim_Plateforme_DBEntities(), "En cours");
            t_tache.UserCreation = DataAccess_STORE.CurrentUser(User.Identity.Name).IdUser;
            t_tache.DateCreation = DateTime.Now;
            t_tache.AffecteA = DataAccess_STORE.CurrentUser(User.Identity.Name).IdUser;

            db.T_Tache.Add(t_tache);
            await db.SaveChangesAsync();

            return RedirectToAction("Index");
        }

        return PartialView("_PartialCreateTask", t_tache);
    }

Заранее спасибо за помощь!

...