包括:仅限于—
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 文件中,调用 Aspire.Hosting.RustAppHostingExtension.AddRustApp
实例上的 builder
以添加 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 应用程序添加为对应用主机项目中其他资源的引用。