Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
💸 Как сделать бизнес проще, а карман толще?
Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое раписание, но и напоминать клиентам о визитах тоже.
Проблема в том, что средняя цена по рынку за такой сервис — 800 руб/мес или почти 15 000 руб за год. И это минимальный функционал.
Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.⚡️ Для новых пользователей первый месяц бесплатно. А далее 290 руб/мес, это в 3 раза дешевле аналогов. За эту цену доступен весь функционал: напоминание о визитах, чаевые, предоплаты, общение с клиентами, переносы записей и так далее. ✅ Уйма гибких настроек, которые помогут вам зарабатывать больше и забыть про чувство «что-то мне нужно было сделать». Сомневаетесь? нажмите на текст, запустите чат-бота и убедитесь во всем сами! Компиляция страниц по требованию
Сравним действия, которые совершает ASP.NET 2.0 и ASP.NET 1.0, когда пользователь запрашивает файл с расширением. aspx. В ASP.NET 1.x среда выполнения анализирует директиву Page страницы, осуществляет поиск соответствующего класса в сборке приложения, затем на основании кода страницы создается класс, производный от класса программной логики страницы. В случае если сборка отсутствует, то осуществляется поиск файла программной логики, указанного в атрибуте Src директивы Page. Если файл найден, то происходит компиляция сборки, если нет, то ASP.NET выбрасывает исключение. В ASP.NET 2.0 среда выполнения также анализирует директивы Page, осуществляет поиск сборки соответствующей классу логики страницы, после чего создается класс страницы. В отличие от ASP.NET 1.x, родительским классом для класса страницы является System.Web.UI.Page, поскольку создаваемый динамический класс является собственно классом страницы (используются разделяемые классы для класса страницы и класса программной логики), а не потомком класса программной логики. Поэтому, если в ASP.NET 1.x класс Web-формы мог называться также как и сама Web-форма.
< form id=" frmDefault" runat=" server" > < /form> … public class frmDefault: System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e){} }
В ASP.NET 2.0 это недопустимо, поскольку элемент управления System.Web.UI.Form является элементом класса. Основным преимуществом ASP.NET является то, что в случае отсутствия сборки, необходимой для выполнения страницы, происходит компиляция только файла программной логики страницы, без перекомпиляции всей сборки. Поскольку существует динамическая компиляция, то необходимо обеспечить возможность создавать код, общий для всех страниц приложения. Для этой цели в ASP.NET 2.0 существуют специальные директории, являющиеся дочерними директориями корневой директории приложения, одна из которых App_Code, служит для хранения файлов, содержащих общий код для всех страниц. При выполнении динамической компиляции, код из директории App_Code компилируется и становится доступным для всех страниц WEB‑ приложения. При этом VS поддерживает код, находящийся в директории App_Code, поэтому работает подсветка синтаксиса и IntelliSense. Исследовать генерируемые средой выполнения ASP.NET 2.0 файлы, и подробно разобраться в процессе компиляции можно изучив содержимое директории: %WINDIT%\Microsoft.NET\Framework\версия\Temporary ASP.NET Files\имя_приложения куда ASP.NET 2.0 помещает динамически созданные сборки. Либо, вызвав ошибку на ASP.NET странице в режиме отладки выбрать ссылку Show Complete Compilation Source. Если же необходимо заранее скомпилировать проект, перед развертыванием его на сервере в ASP.NET 2.0 существует возможность полной или частичной перекомпиляции WEB‑ приложения.
|