public class InstanceConfigurationBuilderItem : ConfigurationBuilderItemBasePublic Class InstanceConfigurationBuilderItem
Inherits ConfigurationBuilderItemBasepublic ref class InstanceConfigurationBuilderItem : public ConfigurationBuilderItemBasetype InstanceConfigurationBuilderItem =
class
inherit ConfigurationBuilderItemBase
endПример класса в отдельной сборке, реализующего метод Invoke:
public class MyLoaderClass
{
public async ValueTask<Dictionary<string, object?>?> Invoke(
Dictionary<string, object?> parameters,
Dictionary<string, object?> storage,
Dictionary<string, object?> info,
CancellationToken cancellationToken = default)
{
// parameters - json object from ".include" directive
// storage - current storage before including, same as context.Storage
// info - additional info, same as context.Info
if (parameters.TryGet<object>("uri") is string uri)
{
// load configuration from uri
return new Dictionary<string, object?> { ["Result"] = 42L };
}
return null;
}
}Пример содержимого app.json для использования такого загрузчика из сборки MyLibrary.dll:
{
".include": [
{
".loader.type": "MyNamespace.MyLoaderClass, MyLibrary",
"uri": "https://my.configuration.server/files/app.json"
}
]
}| InstanceConfigurationBuilderItem | Объект, соответствующий конфигурационному файлу, хранилище которого возвращается указанным методом для экземпляром класса. |
| CreateInstanceFunc | Функция, создающая экземпляр класса, для которого выполняется метод MethodInfo для получения хранилища конфигурационного файла. Если экземпляр реализует интерфейс IAsyncInitializable, то он будет инициализирован перед использованием. Если экземпляр реализует интерфейс IAsyncDisposable или IDisposable, то он будет освобождён после использования. |
| FilePathForError | Путь до файла, записываемый в свойство FilePath при возникновении ошибок, связанных с вызовом методов этого объекта. Может быть равен null/пустой строке, если информация по файлу не предоставляется. (Переопределяет ConfigurationBuilderItemBaseFilePathForError) |
| MethodInfo | Метод, выполняемый для получения хранилища конфигурационного файла. Должен возвращать Dictionary<string, object?>? либо явно, либо асинхронно как TaskTResult или ValueTaskTResult. Первым параметром метод получает объект из директивы IncludeConfigurationDirective. Вторым опциональным параметром метод получает значение Storage, третьим опциональным параметром - Info, а четвёртым опциональным параметром - CancellationToken. |
| Parameters | Параметры директивы IncludeConfigurationDirective, передаваемые в метод MethodInfo. |
| Equals(IConfigurationBuilderItem) | Indicates whether the current object is equal to another object of the same type. (Унаследован от ConfigurationBuilderItemBase) |
| Equals(Object) | Determines whether the specified object is equal to the current object. (Унаследован от ConfigurationBuilderItemBase) |
| EqualsCore | Indicates whether the current object is equal to another object of the same type. (Унаследован от ConfigurationBuilderItemBase) |
| Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Унаследован от Object) |
| FinalizeContextAsync |
Завершает обработку контекста context после обработки текущего объекта в блоке finally.
(Унаследован от ConfigurationBuilderItemBase) |
| FinalizeContextCoreAsync |
Подготавливает контекст context перед обработкой текущего объекта.
(Унаследован от ConfigurationBuilderItemBase) |
| GetHashCode | Serves as the default hash function. (Унаследован от ConfigurationBuilderItemBase) |
| GetType | Gets the Type of the current instance. (Унаследован от Object) |
| LoadStorageAsync |
Загружает хранилище для текущего файла конфигурации или null, если хранилище отсутствует.
(Унаследован от ConfigurationBuilderItemBase) |
| LoadStorageCoreAsync |
Загружает хранилище для текущего файла конфигурации или null, если хранилище отсутствует.
(Переопределяет ConfigurationBuilderItemBaseLoadStorageCoreAsync(IConfigurationBuilderContext, CancellationToken)) |
| LoadStorageFromInstanceAsync | |
| MemberwiseClone | Creates a shallow copy of the current Object. (Унаследован от Object) |
| PrepareContextAsync |
Подготавливает контекст context перед обработкой текущего объекта.
(Унаследован от ConfigurationBuilderItemBase) |
| PrepareContextCoreAsync |
Подготавливает контекст context перед обработкой текущего объекта.
(Унаследован от ConfigurationBuilderItemBase) |
| ToString | Returns a string that represents the current object. (Переопределяет ObjectToString) |
| TryCreateWatcherAsync |
Создаёт объект, обеспечивающий возможность прослушивания изменений в конфигурационном файле,
или null, если такой объект не поддерживается.
(Унаследован от ConfigurationBuilderItemBase) |
| TryCreateWatcherCoreAsync |
Подготавливает контекст context перед обработкой текущего объекта.
(Унаследован от ConfigurationBuilderItemBase) |