Application

Application

🌍 Idioma: English | Español

Punto de entrada principal de las aplicaciones DAFce. TDafApplication envuelve el pipeline genérico de Hosting y añade ayudas de ciclo de vida a nivel de aplicación, metadatos de versión y un acceso singleton global.

Delphi 12+ Licencia


Inicio rápido

program MyApp;

uses
  Daf.Application.Builder;

begin
  TDafApplication
    .CreateHostBuilder(ParamStr(0))
    .ConfigureServices(
      procedure(Services: IServiceCollection)
      begin
        Services.AddTransient<IMyService, TMyService>;
      end)
    .Build
    .Run;
end.

Patrón de subclase

Sobreescribe Execute para escribir lógica de arranque imperativa:

type
  TMyApp = class(TDafApplication)
  protected
    procedure Execute; override;
  end;

procedure TMyApp.Execute;
begin
  Logger.LogInformation('App en ejecución, versión {V}', [VersionInfo.Tag]);
  // … trabajo de larga duración o RunAsync
end;

Información de versión

Cada aplicación lleva un record TVersionInfo rellenado en tiempo de compilación:

var V := TDafApplication.App.VersionInfo;
// V.Major, V.Minor, V.Patch, V.PreRelease, V.Tag
// V.ArchBits (32 / 64), V.Platform, V.Debug (bool)
// V.VersionTag(WithCompiledMeta) → cadena semver completa

Singleton global

TDafApplication.App  // propiedad de clase — disponible después de Build

Servicios en tiempo de ejecución

var App := TDafApplication.App;
App.Services       // IServiceProvider
App.Environment    // IHostEnvironment
App.Configuration  // IConfiguration
App.Host           // IHost

Documentación

  • 📖 Guía de uso — API del builder, ciclo de vida, metadatos de versión, integración con Hosting