1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/code2roc-FastExecutor

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
FrameworkDesgin.md 7.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 07:02 cd605f4

База данных

Дизайн интерфейса

  • Построение страницы: на основе Vue.js и ElementUI компонентов, локальная разработка HTML (неинструментарий разработки проекта).
  • Запрос данных: основанный на jQuery упакованный запрос функции.
  • Маршрутизация: страница построена на основе cshtml, маршрутизация использует бэкенд MVC маршрутизацию.
  • Разработка индивидуальных компонентов.
  • Контроль версий: через fehead.js (https://gitee.com/code2roc/FastExecutor/blob/master/code/FastExecutor/FastExecutor/Resource/js/fe.head.js) и fefoot.js (https://gitee.com/code2roc/FastExecutor/blob/master/code/FastExecutor/FastExecutor/Resource/js/fe.foot.js), глобальный контроль версий.
  • Рекомендуемый редактор: VSCode.
  • Специальные настройки: из-за необходимости форматирования кода Vue, в файле настроек необходимо добавить следующий код:
"emmet.includeLanguages": {
    "cshtml": "html"
},
"files.associations": {
    "*.cshtml": "html"
}

Бэкенд-дизайн

Код и описание структуры фреймворка

FastExecutor: основной код фреймворка, используемый для некоторых настроек при запуске фреймворка.

FastExecutor.Base: общий уровень дизайна фреймворка, включающий шаблоны, инструменты аутентификации, инструменты внедрения и т. д.

FastExecutor.ORG: бизнес-уровень, встроенный в фреймворк, включая сущности, базу данных, фильтры, глобальные перечисления и т.д.

FastExecutor.Messgae: компонент сообщений внутри фреймворка, основанный на Redis.

Дизайн API

Все контроллеры наследуются от BaseController, включая информацию о личности пользователя и методы получения параметров POST и GET. Контроллеры, связанные с конкретными бизнес-процессами, наследуют от FastTemplateController. Они включают в себя классы операций с базой данных, такие как добавление, удаление, изменение, запрос, пакетные операции и другие методы, которые можно переписать. Архитектура показана ниже:

Изображение

Интеграция бизнес-проектов

Каждый бизнес-проект является независимым проектом MVC. Нужно только сослаться на соответствующие библиотеки DLL, скопировать скомпилированные библиотеки DLL в каталог плагинов фреймворка и скопировать соответствующие страницы в каталог Views фреймворка. Это позволяет бесшовно интегрировать их. Плагины добавляются, загружаются и динамически обновляются с помощью FastExecutor.Base.Util.PluginUtil. Архитектура представлена ниже:

Изображение

Аутентификация на основе токенов

Аутентификация основана на Cookie и Redis. Архитектура представлена ниже:

Изображение

Конфигурация файла webconfig

Конфигурация анонимного доступа, позволяющая пропустить проверку подлинности:

<AnonymousAccess>
    <Pages>
        <Page url="Frame/Attach/ReadFile" />
        <Page url="Frame/Table/ExportXML" />
        <Page url="Frame/Table/ReadCodeFile" />
        <Page url="Frame/Home/Login" />
        <Page url="Frame/Auth/" />
        <Page url="Frame/Error/" />
    </Pages>
</AnonymousAccess>

Конфигурация загрузки файлов:

<!-- Загрузка файлов: Local (хранение в локальной папке) или DB (хранение в базе данных) -->
<add key="AttachStorageType" value="DB"/>
<!-- Путь хранения загруженных файлов (Local, хранение в локальной папке) -->
<add key="AttachVirtualPath" value="AttachFile"/>
<!-- Временный путь хранения файлов -->
<add key="AttachTempPath" value="AttachTempFile"/>

Redis и конфигурация проверки подлинности:

<!-- Конфигурация Redis -->
<!-- Строка подключения Redis -->
<add key="RedisConnectionString" value="127.0.0.1:6379" />
<!-- Время ожидания сеанса по умолчанию -->
<add key="SessionTimeOut" value="30" />
<!-- Префикс токена аутентификации -->
<add key="TokenPrefix" value="FastExecutor" /

Другая системная конфигурация:

<!-- Другая конфигурация -->
<!-- Папка временных файлов генерации кода -->
<add key="CodeTempPath" value="CodeTempFile"/>
<!-- Маршрут по умолчанию для прямого доступа к развёрнутому проекту -->
<add key="DefaultHomeUrl" value="Frame/Home/Index"/>
<!-- Название системы -->
<add key="SystemName" value="Система управления FastExecutor"/>

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/code2roc-FastExecutor.git
git@api.gitlife.ru:oschina-mirror/code2roc-FastExecutor.git
oschina-mirror
code2roc-FastExecutor
code2roc-FastExecutor
master