Добавление web-приложения
В этой статье рассмотрим, как настроить сервер, чтобы можно было взаимодействовать с web-приложением через браузер.
Процесс добавления web-приложения будет рассматриваться относительно учебного проекта, с которым познакомились в статье Учебный проект.
План
К этому моменту серверная часть WT-программы уже должна быть развернута и настроена. Как это сделать, рассматривалось в статье Развертывание проекта в разделах Этап 1 и Этап 2 .
В папке с развернутой серверной частью создать папку \Web, в которой будут храниться бинарники для web-приложения. Например, D:\WorkflowEngine\Template\Web.
Скопировать стандартный конфигурационный файлы appsettings.json из папки config архива в папку D:\WorkflowEngine\Template\Web.
В файл конфигурации D:\WorkflowEngine\Template\Web\appsettings.json внести правки:
В поле ServerUrl проверить, совпадает ли указанный адрес с тем, на котором запущена серверная часть WT-приложения. При несовпадении указать верный путь.
В поле HostUrl указать адрес и порт, на котором будет запущено web-приложение.
В поле XmlFolder проверить, совпадает ли указанный путь до папки WebForms с тем, по которому располагается папка с xml-файлами форм web-приложения. По умолчанию это папка \1. Template\WebForms. При несовпадении указать верный путь.
В полях AnonymousUserName и AnonymousPassword прописать WS_GUEST и 123 соответственно. В базе данных в таблице public.user для пользователя WS_GUEST проверить хэш пароля.
Скопировать штатные бинарники из папки bin архива в папку D:\WorkflowEngine\Template\Web.
В папке \Template\Projects\1. Template\Web разархивированного учебного проекта запустить Template.sln и пересобрать решение.
Из папки \1. Template\Web\Template\bin\Debug\net6.0, куда отправляются файлы после сборки решения, скопировать файл Template.dll и добавить в папку D:\WorkflowEngine\Template\Web.
Скопировать файл _start.bat из архива в папку D:\WorkflowEngine\Template\Web.
Для удобства запуска серверной части создать ярлык на файл D:\WorkflowEngine\Template\Web\_start.bat, переименовав его (например, в Template WEB).
Далее подробнее рассмотрим каждый пункт плана.
При возникновении ошибки в процессе разворачивания проекта вернитесь к этому плану и проверьте каждый его пункт.
Архив
Скачайте бинарники нужной разрядности:
WorkflowWebForms_x64.zip
WorkflowWebForms_x86.zip
Независимо от разрядности структура папок и файлов будет одинаковая. Основные элементы архивов:

Web-приложение построено на базе .Net Core 6.0, что позволяет сделать его портативным. Поэтому в папке bin лежат все необходимые dll-файлы, чтобы на клиентском сервере не приходилось отдельно устанавливать .NET Core SDK.
В папке config лежит конфигурационный файл appsettings.json, хранящий настройки доступа к web-приложению и адрес серверной части.
Файл _start.bat запускает наше web-приложение.
Разворачивание и настройка
В папке, в которую развернули серверную часть, например, D:\WorkflowEngine\Template, создадим папку Web, в которой будут храниться бинарники для web-приложения. Например, D:\WorkflowEngine\Template\Web.
Настройка конфига
Скопируем стандартный конфигурационный файлы appsettings.json из папки config архива в папку D:\WorkflowEngine\Template\Web.
В файл конфигурации web-приложения D:\WorkflowEngine\Template\Web\appsettings.json внесем правки:
В поле ServerUrl укажем IP-адрес (или доменное имя) и порт серверной части WT-программы, к которой будет обращаться web-приложение. Этот адрес указывали в файле D:\WorkflowEngine\Template\hosting.json в поле server.urls
В поле HostUrl укажем IP-адрес (или доменное имя) и порт, на котором будет запущено web-приложения и доступно для вызова в браузере.
В поле XmlFolder укажем абсолютный путь до папки WebForms с xml-файлами форм web-приложения. Например, D:\WT\Projects\Template\Projects\1. Template\WebForms.
В полях AnonymousUserName и AnonymousPassword пропишем WS_GUEST и 123 соответственно. В базе данных в таблице public.user для пользователя WS_GUEST проверим хэш пароля.
Если необходимо для пользователя WS_GUEST изменить пароль в базе данных, выполним запрос:
Этот же пароль необходимо указать и в файле конфига.
Подготовка бинарников
В новую папку D:\WorkflowEngine\Template\Web скопируем штатные бинарники из папки bin архива.
В папке \Template\Projects\1. Template\Web разархивированного учебного проекта запустим Template.sln и пересоберем решение для сборки исполнительного файла web-приложения на основе razor-страниц.
Из папки \1. Template\Web\Template\bin\Debug\net6.0, куда отправляются файлы после сборки решения, скопируем файл Template.dll и добавить в папку D:\WorkflowEngine\Template\Web развернутой серверной части.
Скопируем файл _start.bat из архива в папку D:\WorkflowEngine\Template\Web. Для удобства запуска серверной части создадим ярлык на файл D:\WorkflowEngine\Template\Web\_start.bat, переименовав его (например, в Template WEB).
Проверим, что запущена серверная часть WT-программы. При необходимости запустим.

Запустим web-приложение с помощью файла _start.bat:

В браузере обратимся по адресу http://localhost:49708 (при необходимости укажите свой порт) к нашему web-приложению и проверим, что приложение доступно:

Отлично! Web-приложение успешно работает.
Last updated