Search

Saturday, April 4, 2015
0 comments

Business Objects as model in MVC

10:44 AMSaturday, April 4, 2015
We have to already implement mvc project to retrive data with the help of model folder. Today, we will discuss about business objects as model in MVC. First to implement the business logic in the separate project. Add a new class library project in the solution, also Add two class in it. First class that is, department.cs. Copy this code and paste into your department.cs file.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BusinessModel
{
public class department
{
public int Id { get; set; }
public string Name { get; set; }
}
}

Code define the department table properties that is Id and Name. Second class that is, BusinessLayermodel.cs.

Copy this code and paste into your BusinessLayermodel.cs file

using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Configuration;

namespace BusinessModel
{
public class BusinessLayermodel
{
public IEnumerable<department> departments
{
get
{
List<department> dept = new List<department>();

SqlConnection con = new SqlConnection();
con.ConnectionString= ConfigurationManager.ConnectionStrings ["EmployeeConnection"].ToString();
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "select * from [Department]";
cmd.Connection = con;

SqlDataReader rd = cmd.ExecuteReader();
while (rd.Read())
{
department dt = new department();
dt.Id=Convert.ToInt32(rd[0].ToString());
dt.Name = rd[1].ToString();
dept.Add(dt);

}
return dept;
}
}
}
}
In this code, we have a public class BusinessLayermodel with single public property that is departments. This class work as context class, through this, we can access data from the database table by the public property of departments . Comparison between business layer model v/s MVC
model
 
business layer model v/s MVC   model


     Add a reference of the class library project into the MVC project. Add a department controller  in the controller folder. Through which, we will retrieve list of data. Copy this code and paste into your DepartmentController class.
using BusinessModel;

namespace WebApplication11.Controllers
{
public class DepartmentController : Controller
{
//
// GET: /Department/
public ActionResult Index()
{
BusinessLayermodel blt = new BusinessLayermodel();
List<department> dept = blt.departments.ToList();

return View(dept);
}
}
}
Build the project before adding the view in the MVC project. Right click on your controller class, Add new view by the snap shot.

Build the project before adding the view in the MVC project


   Note :  Select List as a Template, also select department as model class which is inside in Library class project. After adding the view in the MVC project.

 the view in the MVC project.
 
  Now run your application, without any changes in the View. Now, Your code generate the following output
 
Now run your application, without any changes in the View.
   
Protected by Copyscape Online Copyright Protection Software

0 comments :

Post a Comment

 
Toggle Footer
Top