简体   繁体   中英

Insert and Get Data from SQL Server using Stored Procedure

I created a stored procedure which consists of insert and get data from SQL Server.

CREATE procedure prc_add (       
@name varchar(128)='',      
@email varchar(128) =''
)
as        
begin
insert into students(name ,email)
select( @name,@email)
select * from students
end

Model

public class Students
{
    
    public string Name { get; set; }
    public string Email { get; set; }

}

C# code in Controller

    public class DashboardController : Controller
    {
        private SqlConnection con;
        //To Handle connection related activities
        private void connection()
        {
            string constr = ConfigurationManager.ConnectionStrings["dsnTest"].ToString();
            con = new SqlConnection(constr);

        }
        public ActionResult students()
        {
            
            return View();
        }
        public ActionResult Getlist(Students objStudents)
        {
            var studentlist = AddandGetStudents(objStudents);
            return View(studentlist);
        }

        public List<Eventrole> AddandGetStudents(Students obj)
        {

            List<Eventrole> studentslist = new List<Eventrole>();
            connection();
            SqlCommand com = new SqlCommand("prc_add", con);
            com.CommandType = CommandType.StoredProcedure;
            com.Parameters.AddWithValue("@name", obj.Name);
            com.Parameters.AddWithValue("@email", obj.Email);

            SqlDataAdapter sqlDA = new SqlDataAdapter();
            DataTable dteventroles = new DataTable();
       
            con.Open();
            com.ExecuteNonQuery();
            sqlDA.Fill(dteventroles);
            con.Close();

            foreach (DataRow dr in dteventroles.Rows)
            {
                studentslist.Add(new Students 
                {
                    Name = dr["name"].ToString(),
                    Email = dr["email"].ToString()
                });
                
            }
            return studentslist;
        } 
 }

In View, I am using JQuery for onclick button.

<div class="form-group" id="div_name">
                        @*Name and Email Panel*@

                        @Html.LabelFor(m => m.Name, new { @class = "col-sm-3 control-label" })



                        <div class="col-sm-5">
                            @Html.TextBoxFor(m => m.Name, new { @placeholder = "Enter Name", @class = "form-control" })
                            
                        </div>
                    </div>


                    <div class="form-group" id="div_email">
                        @Html.LabelFor(m => m.Email, new { @class = "col-sm-3 control-label" })

                        <div class="col-sm-5">
                            @Html.TextBoxFor(m => m.Email, new { @placeholder = "Enter Email", @class = "form-control" })
                            
                        </div>

                        <div class="col-sm-4">
                            <button type="button" class="btn btn-success" onclick="getAll();">Add </button>
                        </div>
                    </div>

    <script>
    function getAll() {
        var students = {};
        students.Name = $SUL('#Name').val();
        students.Email = $SUL('#Email').val();
    
    
        $SUL.ajax({
            url: '@Url.Action("Getlist","Dashboard")',
            method: 'POST',
            data: '{emp: ' + JSON.stringify(students) + '}',
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {
    
                console.log(data);
            },
            error: function (err) {
                console.log(err);
            }
        });
    }
</script>

Earlier I am familiar with aspx page and process page in webforms. Now I started to learn MVC. And I need insert and get data from single stored procedure using AJAX. Can someone help me with C# Coding with SQL stored procedure?

 $.ajax({
            url: "/Dashboard/Getlist",
            type: "POST",
            data: JSON.stringify(students),
            contentType: "application/json; charset=utf-8",
            success: function (result) {
                InformationModalJSONReload(result);
            }
        });
//try it 

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM