В mvc страница не, возвращают сообщение как в asp.net затем, как мы можем выполнить операции отправки в asp.net mvc2. поскольку исключая тем, как выполнить конкретное действие, когда кто-то выбирает chech поле?Заранее спасибо
Механизм, стоящий за моделью postback в WebForms называется HTTP POST. Так пользовательский ввод передается обратно на сервер.
Это можно сделать вручную. Прикрепите обработчик JavaScript вручную к событию "on click" и выполните POST-запрос к какому-нибудь url. Там этот запрос попадёт в какое-нибудь действие контроллера, где вы будете делать то, что хотите. Например, обновите модель (установите/отключите флажок) и верните тот же вид, из которого исходил POST. Вид теперь будет показывать разное состояние флажка.
Механизмы WebForms делают практически то же самое, хотя эти вещи абстрагируются от вас. С ASP.NET MVC вам нужно будет научиться делать это самостоятельно (что всегда хорошо).
Ваш метод действий MVC на вашем контроллере в некотором роде является вашим обработчиком PostBack.
Начните с более простого примера; простое сообщение в форме HTML:
<form action="/MyController/MyAction" method="post">
<input type="text" name="myName" />
<input type="submit />
</form>
Теперь в действии контроллеров вы можете получать опубликованные значения и выполнять свои задачи. Когда закончите, верните браузеру то, что ему нужно:
public class MyController: Controller
{
public ActionResult MyAction(string myName)
{
// Do something with myName
return new ContentResult { Content = "Hello " + myName };
}
}
Что касается флажка, то он другой. Вам нужно изучить Javascript (jQuery - наиболее используемая библиотека для этого) и опубликовать действие, используя это. Например, вы можете подключить к событию флажка 'onclick ()' и выполнить XHR - специфичную для браузера операцию Javascript, сообщение (для этого можно использовать jQuery тоже) на ваш контроллер.
Итак, вам нужно начать думать иначе, чем абстракции веб-форм, и заняться HTML, HTTP и Javascript.