ПредишенСледващото

версия за печат

Технологии: динамичен статиката

статично проблем съдържание

Когато оформлението на всеки сайт има един прост проблем, който въпреки своята простота, изисква решение. Това е - проблемът за статично съдържание.

Статично съдържание в динамична среда стои като нещо отделно. Обикновено, статични страници са направени всички същите като динамичен, само в тялото им е просто съдържание на HTML код. Но това е проблемът, а именно, че когато се опитате да промените външния вид на сайта имат pereverstyvat всяка страница на статиката. И го направи ох как мързеливи програмисти, свикнали с кожите и шаблони =)

Решаването

Решението на този проблем се състои във въвеждането на допълнително ниво на абстракция и разделяне на съдържанието на дисплея. Можете да използвате няколко техники.

  1. CMS за запис и съхранение на текстове в динамика;
  2. Вижте целия текст на потребителски контроли;
  3. Използвайте XML;

От тези методи, използването на XML изглежда най-удобен и свързани с тях технологии, тъй като работата е минимална програмиране в този случай. А това статично навън и статиката да го докоснете, за възможно най-малко, не го променя. От друга страна, редактиране на XML не е по-малко удобно, отколкото да редактирате HTML. По този начин няма да е нарушил никъде.

За да подкрепи нашето решение ще отнеме няколко стъпки:

  1. За да форматирате нашето съдържание във формат XML;
  2. Създаване на XSLT шаблон за образуване на частична HTML от XML;
  3. ASP.NET ще създаде модел за подкрепа на господаря страници и да се направят изводи;
  4. Създаване на HttpHandler да подкрепят ТОИ (Търсене Friendly URL);

XML документ

Началото на напредък пада върху формирането на документ за XML схема. Този проблем е прост, но творчески =) документ трябва да съдържа набор от семантични тагове, за да бъдат използвани за структуриране на материала. Утеха може да се окаже, че не е задължително всички наведнъж, за да образуват схема за разпределяне на достатъчен минимален набор и да го разшири, както и да отидем. Например, документът може да бъде:

В този пример изделието, маркерът идентифицира корен контейнер документ глава маркер определя заглавният текст и маркера идентифицира текста на секцията статия. За да започнете, просто, други добавят по-късно, ако възникне такава необходимост.

XSLT шаблон

Показване на документ от XML файл може да бъде в много различни начини. Най-обещаващите изглежда да се използва XSLT технологиите, тъй като ние се потопи в света на XML, така че нека да се потопите главата напред!

За формирането на представянето слой се образува шаблона XSLT, чиято цел е формирането на HTML маркиране на нашата статично съдържание. XSLT шаблони могат, например, както следва:

Това определено е много прост шаблон, но за този пример, ние още е необходимо. Струва си да се обръща внимание на следния модел:

ASP.NET шаблон

Следващата стъпка е да се съберат парчетата и формирането на една красива и чиста = число), тъй като динамичният използваната технология, страницата ще бъде динамичен. Нейната мисия - да ни XML, се превръщат в нашия шаблон. Page ще бъде, например, както следва:

Също така е проста страница, но, въпреки това, той изпълнява своята функция. То се вписва в нашия статично съдържание на динамичен и шаблон, в същото време, обръща съдържание, тъй като ние се кандидатства.

структурата на директориите

Нашата страница е насочена към обработка на URL като

/articles/article.aspx?code=topic за показване на статии

/articles/topic/article.xml. В подкрепа на неговата работа ще създаде следните файлове и директории:

/ Статии - папка за документи;
  • /articles/topic/article.xml - подаде конкретен член;
  • /articles/article.aspx - ASP.NET шаблонен файл;
  • /articles/article.xslt - XSLT шаблон файл;

  • HttpHandler

    Оказа се доста добре, но има нещо, което притеснява =) Нито потребители, нито търсачките не обичат URL адреси с CGI-тура. Това е, разбира се, добре, но това е, че би било по-добре да URL адреси са чести, просто себе си и urlami urlami. Тези, които се наричат ​​приятелски търсачки и четима за човека.

    За да се реши този проблем, ние използваме технологията Servlet, което забелязах в изследването на Java. Всички възможности за това, ние сме в .NET, благодарение Били =)

    За да обработва заявки за да напишете прост манипулатор съдържание, единствената цел на която е да marshruterizatsiya статични запитвания. Водачът може, например, както следва:

    Смисълът на този манипулатор за изпълнение на заявка marshruterizatsiyu. запитвания от формата

    /articles/topic/article.aspx (тази страница не е в нашата система) ще бъде преведен на

    /articles/article.aspx?code=topic. За тези въпроси, за които има съответен XML. Заявки за несъществуващи XML, ще бъдат пренасочени към страницата със списък от статии. Водачът трябва да бъдат регистрирани в web.config, като този:

    Сега искания са прихванати от нашия манипулатор и изпратени до един шаблон, който ще излъчва желания XML документ.

    По този начин ние сме намалили дублирането на код до минимум. Сега остава само да се регистрира една статия с несъществуващ URL =) в нашата й файл ", и ние ще го намери."

    Не е лъжица

    Горният пример показва как динамична технология може да помогне в справянето с статиката. Променете един компонент ще се отрази на външния вид на всички страници статични. Което е добре, защото mninmiziruet програмист работи по neprogrammistskimi задачи. Като пример показва стойността на архитектури на няколко нива, един от най-важните постижения до момента.

    Можете да копирате съдържанието представена на тази страница, то публикувайте отново, направи промени, промяна на дизайна, при условие че те съдържат навсякъде копирана страница на всеки цвят, размер и стил на шрифт индексирани линкове (и така нататък.):

    версия за печат

    Свързани статии

    Подкрепете проекта - споделете линка, благодаря!