Будь-яке web-додаток являє собою досить складну сукупність взаємопов'язаних web-форм. Добре спроектована web-додаток має гарну системою навігації, що дозволяє легко переходити від однієї web-форми до іншої, а також вирішувати інші завдання. ASP.Net володіє чималими можливостями, що дозволяють реалізовувати складні системи навігації за допомогою набору спеціальних елементів управління. Розглянемо найбільш важливі і поширені з них.
Програмний перехід між web-формами
Однією з найпоширеніших проблем, що виникають при розробці web- додатків є передача інформації від однієї сторінки до іншої і від одного додатка до іншого додатку. Існує кілька способів вирішення цієї проблеми, одним з яких є використання рядка запиту, при якому дані передаються в URL-адресу.
Перевага такого підходу полягає в тому, що рядок запиту проста за своєю структурою і не викликає навантаження на сервер, за допомогою такого механізму можна легко переносити інформацію з однієї сторінки на іншу. Недолік полягає в тому, що за допомогою рядка запиту можна передавати тільки інформацію, представлену у вигляді простих рядків, що містять символи, які допускається використовувати в URL-адрссс.
Для передачі інформації в рядку запиту її необхідно помістити в URL-адресу сторінки, до якої повинен відбутися перехід. Це можна зробити, використовуючи елемент керування HyperLink або за допомогою методу Response.RedirectQ.
Наприклад, для того щоб перейти на сторінку login.aspx і передати в рядку запиту змінну username, необхідно виконати наступний код:
Для передачі декількох параметрів в рядку запиту параметри необхідно розділяти знаком амперсанд - "&". З огляду на це попередній приклад можна переробити так, щоб ім'я і прізвище користувача передавалися окремо. Для цього змінимо рядок Response.Redirect наступним чином:
Для вилучення рядка запиту необхідно використовувати метод Querystring об'єкта Request. Для вилучення значень параметрів, що передаються в попередніх прикладах, необхідно використовувати наступний код:
string FN = Request.QueryString [ "firstname"];
string LN = Request.QueryString [ "lastname"];
Якщо Ви помітили помилку в тексті позначте слово та натисніть Shift + Enter