dmitgu (dmitgu) wrote,
dmitgu
dmitgu

Настольный веб-сервер - делаем со скриптами и картинками

В развитие
Настольный веб-сервер (часть 1 из 2) - делаем сами; Настольный веб-сервер (часть 2 из 2) - делаем сами

Итак, оставался вопрос с корневым каталогом (чтоб файлы не только в папке views были видны) и с такими ресурсами для подгрузки в html-файлы, как скрипты, таблицы стилей, картинки. Подробности я написал в комментариях внутри прог. Скажу тут только о расширителях (это новая фишка в C#). Это у статических классов в статических методах бывает в первом аргументе слово «this». Так вот, это слово как бы «приделывает» данный метод как метод другого класса - тип которого у этого первого аргумента. И вызывать данный метод можно из другого класса как его собственный: Другой_класс.Расширенный_метод(...); Только надо указать видимость в пространство имен исходного статического класса там, где мы используем конструкцию Другой_класс.Расширенный_метод(...);

А видимость пространства имен указывается известно как:

using SendExplorer.utilities;

(если брать наш конкретный случай).

Веб-сервер сделан сейчас так, что «видит» лишь те файлы, которые лежат в подкаталогах корневой директории. А вот в корневой директории и в каталогах ее подкаталогов - он НЕ видит файлы. Все это легко поправить - как видно из текста проги, просто будет более громоздко (почти тупое копирование). А если сжато - то надо использовать регулярные выражения, жутко не наглядные для большинства.

Напомню, что запускать надо от имени администратора (можно и не от имени, но пока не будем усложнять код). И при работе с VS тоже надо запускать Visual Studio от имени администратора. А саму прогу из VS запускать клавишей  F5 из окошка файла Program.cs.

Если запускать файл, то это - HomeDesktopApp.exe, лежащий в корневой директории. Как сделать чтоб исполняемые файлы компилировались в эту директорию - было сказано в прошлой заметке Настольный веб-сервер (часть 2 из 2) - делаем сами.

Да, при запуске из VS когда добавил поддержку картинок, то IE все делал, но при этом писал про «я закроюсь» типа (но не закрывался). А при автономном запуске все нормально работало. Хром вобще не жаловался.

Тестируйте по адресам (задавая их в строке браузера):

http://localhost:8085/My_dir/My_dir_page.html

http://localhost:8085/

А сработало всё после того, как я так модифицировал файлы...
О них - в следующих 2ух заметках, а то здесь не вместилось:
Настольный веб-сервер - исходный код 1 часть из 2
Настольный веб-сервер - исходный код 2 часть из 2

Tags: ЖЖвЖЖ программирование, ИТ (информ. технологии), Мои алгоритмы
Subscribe

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments