You are on page 1of 8

Code for controller

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Registration.Repository;
using Registration.Models;

namespace Registration.Controllers
{
public class RegisterController : Controller
{
// GET: Register
public ActionResult Index()
{
return View();
}

// GET: Register/Details/5
public ActionResult GetRegisterDetails()
{
RegisterRepository RegReppo=new RegisterRepository();
ModelState.Clear();

return View(RegReppo.Selectalldata());
}

// GET: Register/Create
public ActionResult AddRegisterDetails()
{
return View();
}

// POST: Register/Create
[HttpPost]
public ActionResult AddRegisterDetails(Register register)
{
try
{
// TODO: Add insert logic here
if(ModelState.IsValid)
{
RegisterRepository RegReppo = new RegisterRepository();
if(RegReppo.InsertData(register))
{
ViewBag.Message = "registeration completed";
}
}

return View();
}
catch
{
return View();
}
}

// GET: Register/Edit/5
public ActionResult EditRegisterDetails(int? id)
{
RegisterRepository RegReppo = new RegisterRepository();

return View(RegReppo.Selectalldata().Find(Register=>Register.id==id));
}

// POST: Register/Edit/5
[HttpPost]
public ActionResult EditRegisterDetails(int? id, Register obj)
{
try
{
// TODO: Add update logic here
RegisterRepository RegReppo = new RegisterRepository();
RegReppo.UpdateData(obj);
return RedirectToAction("GetRegisterDetails");
}
catch
{
return View();
}
}

// GET: Register/Delete/5
public ActionResult DeleteRegisterDetails(int id)
{
try
{
RegisterRepository RegReppo = new RegisterRepository();
if (RegReppo.DeleteData(id))
{
ViewBag.Alertmessage("Deleted Successfully");
}
return RedirectToAction("GetRegisterDetails");
}
catch
{
return View();
}

/* // POST: Register/Delete/5
// [HttpPost]
// public ActionResult Delete(int id, FormCollection collection)
{
try
{
// TODO: Add delete logic here

return RedirectToAction("Index");
}
catch
{
return View();
}
}*/
}
}

Repositoty code

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
using Registration.Models;
using System.Drawing;
using System.Security.Principal;

namespace Registration.Repository
{
public class RegisterRepository
{
private SqlConnection con;
private void connection()
{
string constr = ConfigurationManager.ConnectionStrings["myconnection"].ToString();
con = new SqlConnection(constr);
}

public bool InsertData(Register obj)


{
connection();
SqlCommand cmd = new SqlCommand("RegisterOperation",con);
cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.AddWithValue("@Firstname", obj.Firstname);
cmd.Parameters.AddWithValue("@Secondname", obj.Secondname);
cmd.Parameters.AddWithValue("@Email", obj.Email);
cmd.Parameters.AddWithValue("@Phone", obj.Phone);
cmd.Parameters.AddWithValue("@Address", obj.Address);
cmd.Parameters.AddWithValue("@DateofBirth", obj.DateofBirth);
cmd.Parameters.AddWithValue("@Query", 1);

con.Open();
int i = cmd.ExecuteNonQuery();
con.Close();
if (i >= 1)
{

return true;

}
else
{

return false;
}

public List<Register> Selectalldata()


{
connection();
List<Register> Registerlist = new List<Register>();
SqlCommand cmd = new SqlCommand("RegisterOperation",con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@Query", 4);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
con.Open();
da.Fill(dt);
con.Close();

foreach (DataRow dr in dt.Rows)


Registerlist.Add(
new Register

{
id = Convert.ToInt32(dr["id"]),
Firstname = Convert.ToString(dr["Firstname"]),
Secondname = Convert.ToString(dr["Secondname"]),
Email = Convert.ToString(dr["Email"]),
Phone = Convert.ToString(dr["Phone"]),
Address = Convert.ToString(dr["Address"]),
DateofBirth = Convert.ToDateTime(dr["DateofBirth"])
}
);
return Registerlist;
}

public bool UpdateData(Register obj)


{

connection();
SqlCommand cmd = new SqlCommand("RegisterOperation",con);
cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.AddWithValue("@id",obj.id);
cmd.Parameters.AddWithValue("@Firstname", obj.Firstname);
cmd.Parameters.AddWithValue("@Secondname", obj.Secondname);
cmd.Parameters.AddWithValue("@Email", obj.Email);
cmd.Parameters.AddWithValue("@Phone", obj.Phone);
cmd.Parameters.AddWithValue("@Address", obj.Address);
cmd.Parameters.AddWithValue("@DateofBirth", obj.DateofBirth);
cmd.Parameters.AddWithValue("@Query", 2);

con.Open();
int i = cmd.ExecuteNonQuery();
con.Close();
if (i >= 1)
{
return true;
}
else
{
return false;
}

public bool DeleteData(int id)


{
connection();
List<Register> Registerlist = new List<Register>();
SqlCommand cmd = new SqlCommand("RegisterOperation",con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@Query", 3);

con.Open();

int i = cmd.ExecuteNonQuery();
if (i >= 1)
{
return true;
}
else
{
return false;
}
}

Model code

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;

namespace Registration.Models
{
public class Register
{
[Display(Name = "id")]
public int id { get; set; }

[Required(ErrorMessage ="enter your firstname")]


public string Firstname { get; set; }

[Required(ErrorMessage = "enter your firstname")]


public string Secondname { get; set; }

[Required(ErrorMessage = "Enter Your EmailID")]


[RegularExpression(@"^[\w-\._\+%]+@(?:[\w-]+\.)+[\w]{2,6}$", ErrorMessage = "Please enter a valid email
address")]

public string Email { get; set; }


[Required(ErrorMessage = "Your must provide a PhoneNumber")]
[Display(Name = "Phone")]
[DataType(DataType.PhoneNumber)]
[RegularExpression(@"^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$", ErrorMessage = "Not a valid Phone
number")]
public string Phone { get; set; }

[Display(Name = "Date of birth")]


public DateTime DateofBirth { get; set; }

[Required(ErrorMessage = "Your must provide an address")]


[Display(Name = "Address")]
public string Address { get; set; }

}
}

Sql query
USE [Registration]
GO
/****** Object: StoredProcedure [dbo].[RegisterOperation] Script Date: 12/19/2022
6:42:49 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[RegisterOperation]
@id INT = NULL
,@Firstname VARCHAR(max) = NULL
,@Secondname VARCHAR(max) = NULL
,@Email varchar(max)=null
,@Phone varchar(max)= NULL
,@DateofBirth date= NULL
,@Address varchar(max)= NULL
,@Query INT
AS
BEGIN
IF (@Query = 1)
BEGIN

INSERT INTO Table_Register(Firstname,Secondname,Email,Phone,DateofBirth,Address )


VALUES (@Firstname,@Secondname,@Email,@Phone,@DateofBirth,@Address)

IF (@@ROWCOUNT > 0)
BEGIN
SELECT 'Insert'
END
END
IF (@Query = 2)
BEGIN
UPDATE Table_Register SET Firstname = @Firstname
,Secondname=@Secondname,Email=@Email,Phone=@Phone,DateofBirth=@DateofBirth, Address =
@Address WHERE Table_Register.id = @id
SELECT 'Update'
END
IF (@Query = 3)
BEGIN
DELETE
FROM Table_Register
WHERE Table_Register.id = @id
SELECT 'Deleted'
END
IF (@Query = 4)
BEGIN
SELECT *
FROM Table_Register ;
END
END
IF (@Query = 5)
BEGIN
SELECT *
FROM Table_Register
WHERE Table_Register.id = @id
END

select * from Table_Register

You might also like