ASP.NET Web Pages - Trang web toàn cục

Chương này sẽ giải thích về AppStart và PageStart toàn cục.

Trước khi khởi động web: _AppStart

Hầu hết mã server-side được viết trong các trang web riêng lẻ. Ví dụ, nếu trang web chứa biểu mẫu nhập liệu, trang web thường chứa mã server-side để đọc dữ liệu.

Tuy nhiên, bằng cách tạo trang có tên là _AppStart trong thư mục gốc của trang, bạn có thể chạy mã khởi động (startup code) trước khi trang được khởi động. Nếu trang này tồn tại, ASP.NET sẽ chạy trang này trước khi bất kỳ trang nào trong trang được yêu cầu.

Thường _AppStart được sử dụng để khởi động mã và khởi tạo giá trị toàn cục, ví dụ như bộ đếm và tên toàn cục.

Ghi chú 1:Tên phần mở rộng của tệp _AppStart nên trùng khớp với trang web, ví dụ: _AppStart.cshtml.

Ghi chú 2:_AppStart có tiền tố dấu gạch dưới. Chính vì vậy, người dùng không thể xem tệp này trực tiếp.

Trước mỗi trang: _PageStart

Như chạy _AppStart trước khi trang được khởi động, bạn có thể chạy mã trước bất kỳ trang nào trong thư mục.

Đối với mỗi thư mục trong web, bạn có thể thêm tệp có tên là _PageStart.

Thường _PageStart được sử dụng để thiết lập tệp layout cho tất cả các trang trong thư mục, hoặc kiểm tra đăng nhập của người dùng trước khi chạy trang.

Làm thế nào để hoạt động?

Hình minh họa dưới đây cho thấy nguyên lý hoạt động của nó:

Nguyên lý hoạt động của AppStart và PageStart toàn cục

Khi có yêu cầu, ASP.NET kiểm tra _AppStart có tồn tại hay không. Nếu có và đó là yêu cầu đầu tiên của trang, chạy _AppStart.

Sau đó, ASP.NET kiểm tra _PageStart có tồn tại hay không. Nếu có, chạy _PageStart trước trang được yêu cầu.

Nếu bạn tham chiếu đến hàm RunPage() trong phần _PageStart, bạn có thể quy định tại何处 chạy trang được yêu cầu. Nếu không, _PageStart sẽ chạy trước trang được yêu cầu.