Wednesday 6 November 2013

Fetch values from View in Controller using Request


Fetch values from View in Controller using Request

In this article I will explain how to fetch data from controls which are on View to Controller using Request.

In my last article I explain the same example using FormCollection. Request objects work with both GET and POST Method.

For Example:-

In this example I have created the Home Controller and in this I have created index view.

In this view I have created the following form in which I am taking first name and last name from the user.  For each control I have set the property name. This property I will use in form collection to fetch the data.

@{
    Layout = null;
}

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
</head>
<body>
    <form method="get" action="Welcome\Index">
        <table>
            <tr>
                <td>Enter First Name</td>
                <td><input type="text" id="fname_id" name="fname_name" /></td>
            </tr>
             <tr>
                <td>Enter Last Name</td>
                <td><input type="text" id="lname_id" name="lname_name" /></td>
            </tr>
             <tr>
                <td></td>
                <td><input type="submit"  /></td>
            </tr>
        </table>
    </form>
</body>
</html>

In action I have set the welcome controller and index view. So I have created welcome controller and create index view.




I have fetched the data using Request and pass name property (which we set for the controls) as a key

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MvcApplication1.Controllers
{
    public class WelcomeController : Controller
    {
       

        public ActionResult Index(FormCollection data)
        {
            string fname = Request["fname_name"];
            string lname = Request["lname_name"];
            Response.Write("Your Full name is= " + fname + " " + lname);

            return View();
        }

    }
}


Now execute this code



 Figure 1

Output when Method set as GET



Figure 2

Output when Method set as POST



Figure 3

As you can see that we can fetch data in controller. So after fetching data we can also store in the database.


For any query you can send me mail at info@techaltum.com

No comments:

Post a Comment