ammu11 Ответов: 1

Можно ли дать условие в MVC sitemap ?


Я в замешательстве от того, что у меня есть регистрационная форма и в ней я поставил галочку. Если флажок установлен или установлен, поток должен перейти к пертикулярному контроллеру, или же, если флажок снят, поток программы должен перейти к другому контроллеру .
Итак, моя проблема заключается в том, что можно ли дать условие в MVC sitemapnode? Потому что это работа администратора, и я не знаю, как этого добиться.
Кто-нибудь может помочь мне найти решение

Что я уже пробовал:

Я искал и нашел только то, что он может дать поставщику видимости, а не условие

David_Wimbley

Возможно, вы захотите переосмыслить то, как вы структурируете свое приложение. Переключение контроллеров (и, следовательно, действий) кажется обходным путем, когда вы, вероятно, можете управлять этой логикой в одном контроллере/действии и его соответствующей модели.

Другой альтернативой было бы обработать это в javascript и в основном просто сказать

if (checkbox. prop ("проверено"))
{
$.пост("/передачи/данных/для/контроллер/а");
}
ещё
{
$.пост("/передачи/данных/для/регулятор/Б");
}

Где вы отправляете свои данные "контролеру" (если использовать ваши термины) A, если он проверен, а затем отправьте его "контроллеру B", если он не проверен.

1 Ответов

Рейтинг:
2

Member 7870345

Привет:
Я не совсем уверен в том, чего ты хочешь. Я предполагаю, что в контроллере, который принимает вашу регистрационную форму (например, RegistrationController), вы хотите перенаправить на два действия (указанные A и B) в зависимости от состояния проверки в форме.

В таком случае вы можете сделать что-то вроде этого:

public class RegistrationController:Controller
{
...
   public ActionResult ProcessForm(ModelX data)
   {
     ...
     if (the_user_have_made_clik_in_x)
        return RedirectToActionPermanent("A", "Registration", data);
        //or
        //return RedirectToActionPermanent("A", "OtherController", data);
     else
        return return RedirectToActionPermanent("B", "Registration", data);       
        //or
        //return RedirectToActionPermanent("B", "OtherController", data);
   }


   public ActionResult A(ModelX data)
   {
   ...//process here to case 1
   }

   public ActionResult B(ModelX data)
   {
   ... //process here to case 2
   }
}