共用方式為


.NET .NET Aspire Rust 託管

包含:主機代管整合Client 整合

注意

這項整合是 .NET.NET Aspire 社群工具組 的一部分, 不受 .NET.NET Aspire 小組正式支援。

Rust 是一般用途的程式設計語言,強調效能、類型安全性和並行。 它會確保記憶體安全性,這表示所有的引用都指向有效的記憶體。 .NET Aspire Rust 裝載整合可讓您在 .NET Aspire 應用程式主項目中裝載 Rust 應用程式,並將它提供給應用程式中的其他資源。

主機代管整合

Rust 裝載整合會將 Rust 應用程式模型化為 Aspire.Hosting.ApplicationModel.RustAppExecutableResource 類型。 要存取這類型和允許您將其新增到應用程式主機專案的 API,請在應用程式主機專案中安裝 📦 CommunityToolkit。Aspire.Hosting.Rust NuGet 套件。

此整合預期已在主計算機上安裝 Rust 程式設計語言,而 Rust 套件管理員 cargo 可在系統路徑中使用。

dotnet add package CommunityToolkit.Aspire.Hosting.Rust

如需詳細資訊,請參閱 dotnet add package管理 .NET 應用程式中的套件相依性

新增 Rust 資源

在應用程式主專案的 Program.cs 檔案中,呼叫 builder 實例上的 Aspire.Hosting.RustAppHostingExtension.AddRustApp,以新增 Rust 應用程式資源,如下列範例所示:

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...

應用程式的工作目錄應該是 Rust 應用程式目錄的根目錄。 您也可以將args參數傳遞至 AddRustApp 方法,以自定義執行行為。

var rust = builder.AddRustApp("rust-app", workingDirectory: "../rust-service", args: ["--locked"])
                 .WithHttpEndpoint(env: "PORT");

Rust 應用程式可以新增為應用程式主專案中其他資源的參考。

另請參閱