История изменений ODataDB

История изменений ODataDB

Версия 5.0 от 07.05.2024

Важные изменения:

  • Для работы требуется ASP.NET Core 8.0.
  • С версии 5.0 не поддерживается Microsoft Internet Explorer.
  • ODataDB 5.0 не включает поставщики данных для Oracle Database, NuoDB и SQLite (их можно установить отдельно).
  • Ключ EditRoots стал секцией и включает корневые сегменты и соответствующие им страницы. Секция EditPages удалена.
  • Для работы клиента JavaScript требуется поддержка модулей JavaScript.
  • Установочные пакеты ODataDB включают новые настройки приложения и файлы каталога wwwroot. Мы исключили примеры, чтобы можно было начать работать без дополнительных настроек.

Новые возможности:

  • Новый мастер setup.exe позволяет настраивать веб-сайты и приложения IIS, сервисы Windows и сертификаты SSL в Windows.
  • ODataDB включает новый пакет с установщиком для Windows.
    Мы рекомендуем использовать в Windows именно его.
  • ODataDB включает схему аутентификации JWT и настройку страниц входа и регистрации новых пользователей.
  • ODataDB позволяет аутентифицировать пользователей хранимыми процедурами с поддержкой ролей пользователей.
    Например, можно разрешить пользователям самостоятельно регистрироваться в приложении как покупателю или продавцу и использовать соответствующие роли buyer с разными возможностями.
  • ODataDB автоматически заменяет тег <base href="/" /> для приложений IIS.
    Соответственно, можно использовать один и тот же каталог wwwroot для веб-сайтов и приложений IIS, сервисов Windows и консольных приложений.
  • Разработчики могут настроить изменение имен объектов для сервиса в секции ApiNameReplacements настройки подключения.
    Например, можно изменить имя "view_money_transactions" на "transactions".
  • ODataDB автоматически определяет наличие SSL сертификата в Windows и использует конечные точки HTTPs.
  • ODataDB автоматически перенаправляет на конечные точки HTTPs, если обслуживаются конечные точки HTTP и HTTPs.
  • ODataDB позволяет настроить порт по умолчанию.
  • Обработчики WhereByDefault позволяют задать колонки, которые по умолчанию используются в качестве фильтров.
  • Обработчики HideByDefault позволяют задать колонки и параметры, скрытые по умолчанию.
  • ODataDB позволяет изменять сервер, базу данных и порт для подключения (если разрешено).
    Например, можно использовать адрес типа /edit/mssql:db.savetodb.com,1433,AzureDemo100/ для подключения к базе данных AzureDemo100 на сервере db.savetodb.com по порту 1433.
  • Домашняя страница подключений к базам данных master, mysql и postgres позволяет выбрать доступную базу данных на сервере.
  • Клиент JavaScript поддерживает темную тему.
  • Клиент JavaScript отображает панель слева для быстрого подключения к любому объекту.
  • Клиент JavaScript позволяет фильтровать таблицы.
  • Клиент JavaScript позволяет использовать виды таблиц (используйте надстройку SaveToDB для создания и сохранения видов).
  • Клиент JavaScript отображает иконку с описанием таблицы из базы данных.

Улучшения:

  • ODataDB поддерживает имя подключения как первый сегмент.
    Сейчас поддерживаются оба варианта: /<root>/<connection>/<query> и /<connection>/<root>/<query>.
    Например: https://odatadb/edit/mssql/ и https://odatadb/mssql/edit/.
  • Обработчики DoNotAddValidationLists отключают также автоматическое создание списков значений параметров.
  • Схема таблиц настройки приложений используются для поиска объектов без заданных схем.
  • Тип tinyint(1) MySQL трактуется как boolean.
  • ODataDB определяет типы колонок хранимых процедур по объектам сохранения изменений.
  • ODataDB возвращаем массив имен колонок для пустых результатов хранимых процедур с неизвестным набором выходных колонок.
  • Поле RowNumber скрыто по умолчанию.
  • ODataDB поддерживает переменную среды ASPNETCORE_WEBROOT для определения папки webroot.
  • ODataDB позволяет задать базовый путь приложения ASP.NET в свойстве ApplicationPathBase.
  • ODataDB позволяет обслуживать конечные точки API при отсутствии папки wwwroot.

Исправленные ошибки:

  • MySqlConnectorNet в Linux вызывает исключение, связанное с _dataCache.
  • ODataDB не экранирует переводы строк в мета-данных.

Версия 4.7 от 12.07.2023

Улучшения:

  • Улучшена обработка исключений.

Версия 4.6 от 10.04.2023

Улучшения:

  • ODataDB позволяет использовать объекты MySQL с пустыми схемами. В этом случае используется схема активного соединения.
  • Повышена производительность загрузки метаданных SQL Server.

Версия 4.5 от 21.02.2023

Новые возможности:

  • ODataDB генерирует списки значения на основе значений ENUM MySQL и PostgreSQL.
  • ODataDB поддерживает тип данных SET MySQL.
  • ODataDB преобразует данные MySQL binary(16) и varbinary(16) в формат GUID при наличии в COLUMN_DEFAULT функций uuid_to_bin(uuid()), uuid_to_bin(uuid(),0) или uuid_to_bin(uuid(),1).

Улучшения:

  • ODataDB использует поставщик данных MySql.Data.MySqlClient, установленный в системе.
    До этого использовался поставщик, поставляемый с приложением.
    Данное решение позволяет устанавливать и использовать наиболее свежую версию поставщика:
    https://dev.mysql.com/downloads/connector/net/
  • ODataDB выполняет динамическую замену отсутствующего поставщика данных MySql.Data.MySqlClient на встроенный поставщик MySqlConnector.
  • Улучшена производительность получения метаданных MySQL 8.

Исправленные ошибки:

  • Подключение к MySQL 8 с использованием поставщика данных MySql.Data.MySqlClient вызывает различные исключения.

Версия 4.4 от 23.01.2023

Улучшения:

  • Обновлены примеры приложений на 2023 год.
  • Обновлены поставщик данных .NET и .NET Framework для Snowflake.
  • Обновлена утилита регистрации.

Версия 4.3 от 13.12.2022

Улучшения:

  • ODataDB позволяет использовать страницы редактирования, специфичные для языка.
  • ODataDB включает специальные страницы редактирования для упрощенного китайского, традиционного китайского, японского и корейского языков.
  • ODataDB включает новую темную тему.
  • Примеры и пакеты SaveToDB Framework выпущены под лицензией MIT.

Версия 4.2 от 05.10.2022

Исправленные ошибки:

  • Значения типа даты и времени SQLite и MySQL через поставщиков .NET выводятся в виде строк.

Версия 4.1 от 17.08.2022

Критические изменения:

  • ODataDB не активирует сохранение изменений для представлений, процедур и SQL кода на основе соединения нескольких таблиц.
    Для сохранения изменений таких объектов следует вручную задать целевую таблицу в таблице xls.objects.
  • Если тип данных свойства или параметра не может быть определен, используется тип Edm.Untyped (добавлен в OData 4.01).
  • Списки значений на основе таблиц и представлений всегда публикуются как функции.
  • Поля представлений и процедур на основе нескольких таблиц помечаются как расчетные.
  • Контекстные параметры для клиентских приложений включаются в состав свойств объектов (например, rownum).
  • Если для объекта определена единственная процедура вставки (режим Merge), то объект результата выводится как ComplexType, а не EntityType.

Улучшения:

  • Перевод в SQLite и SQL Server Compact с пустыми схемами и именами объектов добавляется в схему Default.
  • Улучшено определение полей для списков значений (понижен приоритет Guid и Char(36)).
  • Из модели исключаются также ссылки на определение аннотаций, если вывод аннотаций не требуется.

Исправленные ошибки:

  • ODataDB отключает сохранение процедурами, если задан обработчик изменений _change.
  • ODataDB не сохраняет изменения данных из форм JSON.
  • Не работает редирект на домашнюю страницу при изменении свойства base страниц HTML.

Версия 4.0 от 05.07.2022

ODataDB включает измененное Лицензионное соглашение.

Наиболее важное изменение:

"Приобретая Программу от имени вашей компании, вы даете неявное согласие на указание имени вашей компании как нашего клиента.
Вы можете отозвать ваше согласие в любой момент, направив запрос по электронной почте".

Новые возможности:

  • Добавлена документация ODataDB на русском языке.
  • ODataDB включает новое Руководство разработчика.
  • ODataDB доступен на упрощенном китайском, традиционном китайском, японском и корейском языках.
  • ODataDB поддерживает языковые коды длиной до 10 символов. Например, можно использовать zh-cn, zh-hans и zh-hans-cn. zh-hans и zh-hant являются предпочтительными для китайского языка.
  • ODataDB поддерживает SQL код во всех таблицах настройки.
  • ODataDB поддерживает .NET Framework 4.7.2.
  • ODataDB поддерживает провайдер Microsoft.Data.SqlClient.
  • ODataDB поддерживает конечные точки управления приложением: /v4/$stop, /v4/$show, /v4/$hide.
    Для включения поддержки команд, установите StopEnabled в true в файле настроек приложения.
  • ODataDB поддерживает параметр $reloadMetadata=true в HTTP запросах для обновления метаданных базы данных.
    Пользователи могут нажать Ctrl и кликнуть на кнопке Reload для обновления метаданных в клиента JavaScript.
  • ODataDB поддерживает параметр $orderby в URL запроса.
  • ODataDB поддерживает параметр $binaryAsHex в URL запроса и параметр binaryAsHex в заголовке Prefer.
  • ODataDB поддерживает параметр $bigNumbersAsString в URL запроса и параметр bigNumbersAsString в заголовке Prefer.
  • ODataDB поддерживает параметры $timezone и $timezoneoffset в URL запроса и заголовке Prefer.
  • Настройки ODataDB в файле конфигурации выделены в группы ODataDB и ODataDBW.
  • ODataDB поддерживает новые опции в файле конфигурации:
    MaxPageSize, UppercaseNamesInLowercase, DisableEditPageCache, BinaryAsHex, BigNumbersAsString, TraceSQL, StopEnabled.
  • ODataDB поддерживает новые опции в разделах строк подключения в файле конфигурации:
    AllowDatabaseChange, Offline, Home.
  • ODataDB добавляет заголовок для отключения кэширования:
    Cache-control: no-cache, no-store, must-revalidate.
  • Метаданные объектов включают аннотации для настроенных обработчиков событий.
  • ODataDB сортирует результаты таблиц и представлений по умолчанию.
    Для сортировки могут использоваться первичные ключи, колонки identity или полный набор выходных колонок.
  • Разработчики могут реализовать разбивку на страницы для хранимых процедур, используя следующие пары параметров:
    top и skip, limit и offset, $top и $skip или $limit and $offset.
  • Клиент JavaScript поддерживает фиксацию колонок.
  • Клиент JavaScript позволяет выполнять обработчики типа Actions и ContextMenu.
  • Клиент JavaScript поддерживает JSON-параметры процедур редактирования.
  • Клиент JavaScript поддерживает процедуры обновления единственным запросом (bulk update).

Улучшения:

  • Платформа ODataDB обновлена до .NET 6.0.
  • ODataDB поддерживает SaveToDB Framework 10.
  • Клиент JavaScript значительно переработан, включая CSS.
  • ODataDB преобразует пустые значения не строковых типов в NULL.
  • ODataDB не добавляет поля @ псевдокода SQL в выходные поля SELECT.
    Например, id, state, @country_id преобразуется в SELECT id, state FROM ... WHERE country_id = @country_id.
  • Параметры хранимых процедур и SQL кода могут использовать символы в кодировке XML для получения значений из базовых колонок.
    Например, параметр @company_x0020_name получает значение колонки "company name".
  • ODataDB не использует аннотацию IncludeInServiceDocument для исключения ошибки в клиентах, использующих предыдущие версии Microsoft ODataLib.

Исправленные ошибки:

  • ODataDB не читает объекты SQL Data Warehouse.
  • ODataDB возвращает пустой заголовок content-type для некоторых ответов text и HTML.