Thông tin

[ASP.NET] Sử dụng chung nhiều phương thức cho nhiều trang

Các bài viết giới thiệu và hướng dẫn dành cho lập trình Web

[ASP.NET] Sử dụng chung nhiều phương thức cho nhiều trang

Gửi bàigửi bởi neverland87 » T.Hai 22/09/2008 10:00 pm

Tên bài viết: Sử dụng chung nhiều phương thức cho nhiều trang
Tác giả: neverland87
Cấp độ bài viết: Dễ
Tóm tắt: Bạn lên ý tưởng xây dựng một website, và những trang web của bạn đều có những tính năng chung nào đó, chẳng hạn hiển thị thông tin ngày tháng khi khách viếng thăm.


Lúc này, ý tưởng đầu tiên bạn nghĩ đến là xây dựng một phương thức HienThiThoiGian(), rồi ở từng cửa sổ code-behind của từng trang web, bạn copy-n-paste phương thức trên vào thân class của trang web cụ thể nào đó như thế này:

Default.aspx:
Mã: Chọn tất cả
  1. public partial class _Default : System.Web.UI.Page
  2. {
  3.     protected void Page_Load(object sender, EventArgs e)
  4.     {
  5.         HienThiThoiGian();
  6.     }
  7.     public void HienThiThoiGian()
  8.     {
  9.         Response.Write(DateTime.Now.ToLongDateString());
  10.     }
  11. }

Default2.aspx:

Mã: Chọn tất cả
  1. public partial class Default2 : System.Web.UI.Page
  2. {
  3.     protected void Page_Load(object sender, EventArgs e)
  4.     {
  5.         HienThiThoiGian();
  6.     }
  7.     public void HienThiThoiGian()
  8.     {
  9.         Response.Write(DateTime.Now.ToLongDateString());
  10.     }
  11. }

Thật sự mà nói, đây không phải là 1 ý tưởng hay, ít nhất là bạn vừa làm dư thừa những dòng code! Vậy bạn phải làm gì để cải thiện điều này? Đơn giản lắm, bạn chỉ cần tạo 1 class mới (Website\Add New Item… -> chọn Class, đặt tên class ở ô Name rồi nhấn OK). Chẳng hạn mình đặt tên là InheritedClass. Trong cửa sổ code của class vừa tạo, bạn cho class này thừa kế từ class System.Web.UI.Page. Công việc lúc này của bạn là thêm những phương thức nào mà những trang web của bạn sẽ sử dụng chung.

Bây giờ bạn qua cửa sổ code của trang nào đó, chẳng hạn ở đây là trang Default.aspx, bạn thay dòng:

Mã: Chọn tất cả
  1. public partial class _Default : System.Web.UI.Page


bằng dòng:

Mã: Chọn tất cả
  1. public partial class _Default : InheritedClass


Lúc này đơn giản chỉ cần gọi phương thức, thế là xong!

Mã: Chọn tất cả
  1. public partial class _Default : InheritedClass
  2. {
  3.     protected void Page_Load(object sender, EventArgs e)
  4.     {
  5.         HienThiThoiGian();
  6.     }
  7. }

Bạn làm tương tự với những trang khác là được!
SIMPLY THE BEST - ĐƠN GIẢN LÀ TỐT NHẤT
neverland87
Guru Group
Guru Group
 
Bài viết: 491
Ngày tham gia: T.Bảy 26/05/2007 4:31 pm

Re: [ASP.NET] Sử dụng chung nhiều phương thức cho nhiều tran

Gửi bàigửi bởi chieunm » T.Sáu 09/07/2010 6:03 am

Cái này là kế thừa trong lập trình OOP mà.
Họ và tên: Nguyễn Mạnh Chiều
Năm sinh: 1988
Nghề nghiệp: Lập trình viên ONENET
Đến từ: Phú Thọ
Languages: VB.NET, CSHARP, VB6, ASP.NET, PHP,...
Hình đại diện của thành viên
chieunm
Thành viên chính thức
Thành viên chính thức
 
Bài viết: 22
Ngày tham gia: T.Hai 14/06/2010 6:14 am
Đến từ: Phú Thọ


Quay về [ASP.Net] Bài viết giới thiệu, hướng dẫn

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.1 khách.