В классе контроллера у нас определены некоторые методы с модификатором public. Их мы можем вызывать из браузера следующим образом
Для Get запросов
1 |
/MyController/SomeMethod/?param1=paramValue¶m2=paramValue |
Для Post Запросов
1 2 3 4 5 6 7 8 |
<form method="post" action=""> <input type="hidden" value="@ViewBag.BookId" name="BookId" /> <p>Введите свое имя </p> <input type="text" name="Person" /> <p>Введите адрес :</p> <input type="text" name="Address" /> <input type="submit" value="Отправить" /> </form> |
либо с указанием конкретного метода
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<form method="post" action="@Url.Action("Buy")"> <input type="hidden" value="@ViewBag.CarId" name="CarId" /> <table> <tr> <td><p>Введите свое имя </p></td> <td><input type="text" name="Person" /> </td> </tr> <tr> <td><p>Введите адрес :</p></td> <td> <input type="text" name="Address" /> </td> </tr> <tr><td><input type="submit" value="Отправить" /> </td><td></td></tr> </table> </form> |
Параметры по умолчанию
1 2 3 4 5 6 |
public string Square(int a=10, int h=3) { double s = a*h/2.0; return "<h2>Площадь треугольника с основанием " + a + " и высотой " + h + " равна " + s + "</h2>"; } |
Пример использования
1 |
http://localhost:50860/Home/Square?a=11&h=5 |
1 |
http://localhost:50860/Home/Square?h=5 |
Получение данных из контекста запроса
Кроме того, мы можем получить параметры, да и не только параметры, но и другие данные, связанные с запросом, из объектов контекста запроса. Нам доступны следующие объекты контекста: Request, Response, RoutedData, HttpContext и Server.
Объект Request содержит коллекцию Params, которая хранит все параметры, переданные в запросы. И мы их можем получить:
1 2 3 4 5 6 7 |
public string Square() { int a = Int32.Parse(Request.Params["a"]); int h = Int32.Parse(Request.Params["h"]); double s = a*h/2.0; return "<h2>Площадь треугольника с основанием " + a + " и высотой " + h + " равна " + s + "</h2>"; } |