[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 Forms

Moderator: vietluyen

Post Reply
neverland87
Guru
Guru
Posts: 490
Joined: Sat 26/05/2007 4:31 pm
Been thanked: 8 times

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

Post by neverland87 »

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:

Code: Select all

public partial class _Default : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {        HienThiThoiGian();    }    public void HienThiThoiGian()    {        Response.Write(DateTime.Now.ToLongDateString());    }}
Default2.aspx:

Code: Select all

public partial class Default2 : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {        HienThiThoiGian();    }    public void HienThiThoiGian()    {        Response.Write(DateTime.Now.ToLongDateString());    }}
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:

Code: Select all

public partial class _Default : System.Web.UI.Page
bằng dòng:

Code: Select all

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

Code: Select all

public partial class _Default : InheritedClass{    protected void Page_Load(object sender, EventArgs e)    {        HienThiThoiGian();    }}
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
chieunm
Thành viên chính thức
Thành viên chính thức
Posts: 22
Joined: Mon 14/06/2010 6:14 am
Location: Phú Thọ
Contact:

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

Post by chieunm »

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,...
User avatar
skatervn
Thành viên danh dự
Thành viên danh dự
Posts: 181
Joined: Wed 16/04/2008 9:44 am
Location: Đà Nẵng
Been thanked: 2 times

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

Post by skatervn »

Quan trọng là bạn ấy hiểu và ứng dụng, còn nói suống OOP thì làm gì, bạn nói vậy nhưng có hiểu và ứng dụng được không, hay chỉ là nói? Rất hoan nghênh những bài viết cụ thể như bạn vậy, mình học hỏi được rất nhiều qua những ví dụ cụ thể như vậy.
Post Reply

Return to “[ASP.NET] Bài viết giới thiệu, hướng dẫn”