hospedagem do .NET.NET Aspire Rust
Inclui:integração de hospedagem não Client de integração
Nota
Essa integração faz parte do do
Rust é uma linguagem de programação de uso geral que enfatiza o desempenho, a segurança do tipo e a simultaneidade. Ela impõe a segurança da memória, o que significa que todas as referências apontam para memória válida. A integração de hospedagem do .NET Aspire Rust permite hospedar aplicativos Rust em seu projeto de host de aplicativo .NET Aspire e fornecê-lo a outros recursos em seu aplicativo.
Integração de hospedagem
A integração de hospedagem do Rust modela um aplicativo Rust como um tipo Aspire.Hosting.ApplicationModel.RustAppExecutableResource
. Para acessar esse tipo e as APIs que permitem adicioná-lo ao projeto host do aplicativo, instale o pacote NuGet 📦 CommunityToolkit.Aspire.Hosting.Rust no projeto host do aplicativo.
Essa integração espera que a linguagem de programação Rust já tenha sido instalada no computador host e o gerenciador de pacotes do Rust cargo
esteja disponível no caminho do sistema.
dotnet add package CommunityToolkit.Aspire.Hosting.Rust
Para obter mais informações, consulte dotnet add package ou Gerenciar dependências de pacotes em aplicações .NET.
Adicionar um recurso do Rust
No arquivo Program.cs do projeto de host do aplicativo, chame o Aspire.Hosting.RustAppHostingExtension.AddRustApp
na instância builder
para adicionar um recurso de aplicativo Rust, conforme mostrado no exemplo a seguir:
var builder = DistributedApplication.CreateBuilder(args);
var rust = builder.AddRustApp("rust-app", workingDirectory: "../rust-service")
.WithHttpEndpoint(env: "PORT");
var exampleProject = builder.AddProject<Projects.ExampleProject>()
.WithReference(rust);
// After adding all resources, run the app...
O diretório de trabalho do aplicativo deve ser a raiz do diretório do aplicativo Rust.
Além disso, você pode personalizar o comportamento de execução passando o parâmetro args para o método AddRustApp
.
var rust = builder.AddRustApp("rust-app", workingDirectory: "../rust-service", args: ["--locked"])
.WithHttpEndpoint(env: "PORT");
O aplicativo Rust pode ser adicionado como uma referência a outros recursos no projeto de host do aplicativo.