Я надеюсь, что кто-то может мне помочь здесь - я пытаюсь настроить базовый виджет MVC для Sitefinity, который будет POST на внешний URL для входа пользователя в систему. Проблема в том, что если я использую обычный HTML для этого, виджет будет работать только в чистом режиме MVC благодаря тому, как WebForms занимается формами.Sitefinity CMS: Html.BeginFormSitefinity с внешним URL?
Я гугл вокруг немного, и обнаружил, что люди, объясняющие, что с обычным «BeginForm» вы можете указать внешний URL действия Thusly:
Html.BeginForm(null, null, FormMethod.Post, new { @action="EXTERNAL_URL" })
порождающих следующую форму открытия тега:
<form action="EXTERNAL_URL" method="post">
Это работает очень хорошо, но все равно выводит обычную HTML-форму, которая не работает с Sitefinity, поэтому у Sitefinity есть собственный метод для создания форм, которые будут работать в гибридном режиме «Html.BeginFormSitefinity». Этот метод имеет все же отменяются, но не ведет себя совершенно так же - когда я пытаюсь использовать этот код:
Html.BeginFormSitefinity(null, null, FormMethod.Post, new { @action="EXTERNAL_URL" })
Это производит следующую форму открывающий тег:
<form action="/TestProject/TestPage/Index" method="POST" name="defaultForm" action="EXTERNAL_URL">
Как вы можете увидеть, что вместо второго атрибута действия вместо атрибута действия появляется второй атрибут действия, как показано в поведении метода MVC по умолчанию.
Я надеюсь, что кто-то с лучшим пониманием того, как работает Sitefinity, может дать вам несколько советов?
Если это только то, что делает «BeginFormSitefinity», то почему бы вам просто не написать HTML «вручную» без каких-либо помощников: '