Bun hosting .NET.NET Aspire
include:l'integrazione dell'hosting non Client
Nota
Questa integrazione fa parte di .NET.NET Aspire Community Toolkit e non è ufficialmente supportata dal team .NET.NET Aspire.
Bun è un framework moderno, rapido e leggero per la creazione di applicazioni Web con TypeScript. L'integrazione dell'hosting di Bun .NET Aspire consente di ospitare applicazioni Bun nel progetto host dell'app .NET Aspire e di fornirle ad altre risorse nell'applicazione.
Integrazione di hosting
L'integrazione di hosting Bun modella un'applicazione Bun come tipo Aspire.Hosting.ApplicationModel.BunAppResource
. Per accedere a questo tipo e API che consentono di aggiungerlo al progetto host dell'app, installare il 📦 CommunityToolkit.Aspire. Hosting.Bun pacchetto NuGet nel progetto host dell'app.
Questa integrazione prevede che l'eseguibile bun sia già stato installato nel computer host e che sia disponibile nel percorso di sistema.
dotnet add package CommunityToolkit.Aspire.Hosting.Bun
Per altre informazioni, vedere dotnet add package o Manage package dependencies in .NET applications.
Aggiungere una risorsa Bun
Nel progetto host dell'app, chiama il Aspire.Hosting.BunAppExtensions.AddBunApp
sull'istanza di builder
per aggiungere una risorsa dell'applicazione Bun, come illustrato nell'esempio seguente.
var builder = DistributedApplication.CreateBuilder(args);
var api = builder.AddBunApp("api")
.WithHttpEndpoint(env: "PORT");
var exampleProject = builder.AddProject<Projects.ExampleProject>()
.WithReference(api);
// After adding all resources, run the app...
Per impostazione predefinita, la directory di lavoro dell'applicazione sarà una cartella parallela all'host dell'applicazione che corrisponde al nome fornito alla risorsa, e il punto di ingresso sarà :::no-loc text="index.ts"::. Entrambi possono essere personalizzati passando parametri aggiuntivi al metodo AddBunApp
.
var api = builder.AddBunApp("api", "../api-service", "start")
.WithHttpEndpoint(env: "PORT");
L'applicazione Bun può essere aggiunta come riferimento ad altre risorse nel progetto host dell'app.
Assicurarsi che i pacchetti siano installati
Per assicurarsi che l'applicazione Bun abbia tutte le dipendenze installate come definito nel file di blocco, è possibile usare il metodo Aspire.Hosting.BunAppExtensions.WithBunPackageInstaller
per assicurarsi che l'installazione del pacchetto venga eseguita prima dell'avvio dell'applicazione.
var api = builder.AddBunApp("api")
.WithHttpEndpoint(env: "PORT")
.WithBunPackageInstaller();