2.4 Tìm hiểu về Controllers
Controller chịu trách nhiệm điều khiển các tương tác của người dùng bên trong ứng dụng MVC. Controller sẽ quyết định cái gì được trả về cho người dùng khi người dùng tạo ra một request trên browser.
Một controller là một class ( C# class hoặc VB class). Trong ví dụ ứng dụng ASP.NET MVC Web Application mâu luôn tôn tai 2 controller là AccountController.cs và HomeController.cs nằm trong folder Controllers
HomeController.cs
01.
using System;
02.
using System.Collections.Generic;
03.
using System.Linq; using System.Web; using System.Web.Mvc;
04.
using System.Web.Mvc.Ajax;
05.
namespace HiTest.Controllers
06.
{
07.
[HandleError]
08.
public
class
HomeController : Controller
09.
{
10.
public
ActionResult Index()
11.
{
12.
ViewData[
"Title"
] =
"Home Page"
; ViewData[
"Message"
] =
"Welcome to ASP.NET MVC!"
;
13.
return
View();
14.
}
15.
public
ActionResult About()
16.
{
17.
ViewData[
"Title"
] =
"About Page"
;
18.
return
View();
19.
}
20.
}
21.
}
Trong HomeController.cs có 2 phương thức là Index() và About(). Hai phương thức này là 2 action trong controller HomeController.cs nó thực hiện khi được gọi bằng địa chỉ /Home/Index và /Home/About. Bất kỳ phương thức nào có thuộc tính public đều là một action trong controller.
Tạo một Controller mới
Trong folder Controllers phải chuột chọn Add New Item MVC Controller Class ( Figure 13)
SanPhamController.cs
Figure 13. Tạo controller tên là SanPhamController.cs
01.
using System;
02.
using System.Collections.Generic;
03.
using System.Linq;
04.
using System.Web;
05.
using System.Web.Mvc;
06.
using System.Web.Mvc.Ajax;
07.
using BanHang.Models;
08.
namespace BanHang.Controllers
09.
{
10.
public
class
SanPhamController : Controller
11.
{
12.
DataClassesDataContext data =
new
DataClassesDataContext();
13.
public
ActionResult Index()
14.
{
15.
16.
ViewData[
"Title"
] =
"Sản phẩm"
;
17.
return
RedirectToAction(
"DanhMucLoaiSanPham"
);
18.
}
19.
public
ActionResult DanhMucLoaiSanPham()
20.
{
21.
22.
ViewData[
"Title"
] =
"Danh mục loại sản phẩm"
; List<LoaiSanPham> lsp = data.LoaiSanPhams.ToList();
23.
return
View(
"DanhMucLoaiSanPham"
, lsp);
24.
}
25.
public
ActionResult DanhSachSanPham(string loaisanpham)
26.
{
27.
ViewData[
"Title"
] =
"Danh sách sản phẩm trong loại sản phẩm"
;
28.
List<SanPham> sp = data.LaySanPhamTuLoaiSanPham(loaisanpham);
29.
return
View(
"DanhSachSanPham"
, sp);
30.
}
31.
32.
public
ActionResult ChiTietSanPham(
int
id)
33.
{
34.
ViewData[
"Title"
] =
"Chi tiết sản phẩm"
;
35.
SanPham ctsp = data.LaySanPhamQuaID(id);
36.
return
View(
"ChiTietSanPham"
, ctsp);
37.
}
38.
}
39.
}
Không có nhận xét nào:
Đăng nhận xét