Настройки приложения ODataDB

Настройки приложения ODataDB

ODataDB читает настройки из файлов конфигурации JSON, таких как appsettings.json и appsettings.Production.json.

Файл appsettings.json содержит настройки для всех сред, а файл appsettings.Production.json содержит настройки для среды Production.

См. подробности в статье JSON Configuration Provider.

Файл appsettings.json может быть пустым:

{
}

Ниже приведен пример файла appsettings.Production.json:

{
  "AllowedHosts": "*",
  "Kestrel": {
    "EndPoints": {
      "Http": {
        "Url": "http://localhost:5002"
      }
    }
  },
  "Logging": {
    "LogLevel": {
      "Default": "Warning",
      "System": "Information",
      "Microsoft": "Information"
    }
  },
  "ODataDB": {
    "WebRoot": "wwwroot",
    "ApiRoot": "v4",
    "EditRoots": "edit",
    "EditPages": {
        "edit": "edit.htm"
    },
    "MaxPageSize": 1000,
    "UppercaseNamesInLowercase": true,
    "DefaultContainerName": "default",
    "DisableMetadataCache": false,
    "DisableEditPageCache": false,
    "IncludeAnnotations": true,
    "PublishConfigurationObjects": true,
    "PublishEditProcedures": true,
    "EnableCodeBrowser": true,
    "BinaryAsHex": false,
    "BigNumbersAsString": false,
    "FunctionPrefixes": "xl_validation_list_, xl_parameter_values_",
    "FunctionSuffixes": "_select",
    "LanguageParameters": "data_language, DataLanguage"
    "TraceSQL": true,
    "StopEnabled": false
  },
  "ODataDBW": {
    "WebRoot": "wwwroot",
    "StopEnabled": true
  },
  "ConnectionStrings": {
    "mssql": {
      "AllowDatabaseChange": true,
      "ProviderName": "System.Data.SqlClient",
      "ConnectionString": "Data Source=mssql.savetodb.com;Initial Catalog=master;User ID=user;Pwd=pass"
    },
    "mssql-011": {
      "Offline": false,
      "Home": "en-us/sample01.htm",
      "QueryList": "",
      "HiddenSchemas": "logs doc xls",
      "ProviderName": "System.Data.SqlClient",
      "ConnectionString": "Data Source=mssql.savetodb.com;Initial Catalog=AzureDemo100;User ID=sample01_user1;Pwd=Usr_2011#_Xls4168"
    }
  }
}

Ключи и секции:

AllowedHosts
См. подробности в статье Host filtering with ASP.NET Core Kestrel web server.
Используйте значение *, чтобы разрешить все адреса.
Kestrel
См. подробности в статье Kestrel web server implementation in ASP.NET Core.
Используйте этот раздел для изменения порта конечных точек.
Logging
См. подробности в статье Logging Configuration.
ODataDB
Эта группа содержит настройки ODataDB.
ODataDBW
Эта группа содержит настройки, переопределяемые для ODataDB для .NET Framework.
Группа может содержать только настройки WebRoot и StopEnabled.
WebRoot
Значение определяет папку с содержимым веб-сайта.
Значение по умолчанию - "wwwroot".
ApiRoot
Значение определяет корневой сегмент API, как, например, 'v4' в /v4/mssql/.
Это значение является общим для всех конечных точек.
EditRoots
Значение содержит список корневых сегментов страниц редактирования, как, например, 'edit' в /edit/mssql/.
Можно использовать несколько значений, разделенных пробелами.
EditPages
Словарь задает страницы редактирования, соответствующие корневым сегментам страниц редактирования.
В примере конфигурации, ODataDB возвращает страницу edit.htm для /edit/mssql/.
MaxPageSize
Значение задает максимальное количество возвращаемых записей.
UppercaseNamesInLowercase
Значение определяет преобразование имен объектов и колонок в верхнем регистре в нижний регистр.
Имена со смешанным регистром остаются неизменными.
DefaultContainerName
Значение определяет имя EntityContainer для модели.
DisableMetadataCache
Значение позволяет отключить кэширование модели базы данных.
Разработчики могут использовать это, чтобы загружать данные каждый раз при активной разработке базы данных.
Вместо этой опции можно использовать системный параметр URL $reloadMetadata=true.
DisableEditPageCache
Значение позволяет отключить кэширование страниц редактирования.
Разработчиик могут использовать это на этапе разработки.
IncludeAnnotations
Значение позволяет отключить аннотации метаданных по умолчанию.
Встроенный клиент JavaScript не зависит от этой опции.
PublishConfigurationObjects
Значение разрешает публикацию объектов настройки приложений как, например, xls.objects, xls.handlers и другие объекты SaveToDB Framework.
Значение по умолчанию исключает такие объекты из модели.
PublishEditProcedures
Значение разрешает публикацию процедур сохранения изменений как, например, usp_cashbook2_insert, usp_cashbook2_update и usp_cashbook2_delete.
Значение по умолчанию исключает такие объекты из модели.
EnableCodeBrowser
Значение разрешает получение определения объектов по адресу с концевым сегментом /$definition.
Значение по умолчанию не разрешает получение определения.
BinaryAsHex
Значение определяет сериализацию двоичных данных по умолчанию в виде HEX-строк вместо base64.
Вместо этой опции можно использовать системный параметр URL $binaryAsHex=true.
BigNumbersAsString
Значение определяет сериализацию больших чисел, которые теряют точность в JavaScript, в виде строк.
Вместо этой опции можно использовать системный параметр URL $bigNumbersAsString=true.
FunctionPrefixes
Значение содержит список префиксов имен хранимых процедур, которым должен быть присвоен тип FunctionImport вместо ActionImport.
Приведенное значение содержит префиксы для примеров SaveToDB и ODataDB.
FunctionSuffixes
Значение содержит список суффиксов имен хранимых процедур, которым должен быть присвоен тип FunctionImport вместо ActionImport.
Приведенное значение содержит префиксы для примеров SaveToDB и ODataDB.
LanguageParameters
Значение содержит список имен контекстных параметров языка.
ODataDB не публикует такие параметры в модели и передает двух-символьный код языка автоматически.
ODataDB определяет код языка из сегмента URL типа /en-us/, /en-gb/ или просто /en/.
Приведенное значение содержит имена параметров, используемых в плагине SaveToDB.
TraceSQL
Значение позволяет включить трассировку генеруемых команд SQL.
StopEnabled
Значение позволяет использовать запрос /v4/$stop для остановки приложения.
ConnectionStrings
Словарь задает имена подключений и их строки подключения.
ODataDB использует имена подключений для настройки конечных точек API. Для приведенного примера создаются две конечные точки: /v4/mssql/ и /v4/mssql-011/.
ProviderName
Значение определяет имя провайдера строки подключения.
ConnectionString
Значение определяет строку подключения.
В строке можно использовать существующие логин и пароль пользователей или шаблоны 'user' и 'pass'.
В последнем случае, ODataDB запрашивает логин и пароль при подключении пользователя.
AllowDatabaseChange
Значение позволяет изменять базу данных подключения непосредственно в URL в формате <connection>:<database>.
Например, можно использовать адрес /edit/mssql:AzureDemo100/ для подключения к базе данных AzureDemo100.
Значение по умолчанию - false.
Offline
Значение позволяет отключить конечную точку.
ODataDB возвращает сообщение о недоступности базы данных даже без обрашения к ней.
Home
Значение позволяет переопределить домашнюю страницу.
ODataDB использует перенаправление на заданную страницу, когда пользователь нажимает кнопку "Домашняя страница".
Чтобы открыть страницу по умолчанию, удерживайте клавишу Ctrl в момент нажатия кнопки.
QueryList
Значение определяет представление списка запросов, которое используется для выбора и настройки объектов, публикуемых в сервисном документе.
Используйте это представление для настройки EntityContainer.
HiddenSchemas
Значение определяет список схем, разделенных пробелами, которые не следует публиковать в сервисном документе.