.NET .NET Aspire Rust 託管
注意
這項整合是 .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 應用程式可以新增為應用程式主專案中其他資源的參考。