次の方法で共有


.NET .NET Aspire Rust ホスティング

含まれるもの:ホスティング統合に含まれる ホスティング統合のみ — Client 統合は含まれませんClient 統合は含まれません

手記

この統合は .NET.NET Aspire Community Toolkit の一部であり、.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 パッケージ の追加」または「.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 アプリケーションは、アプリ ホスト プロジェクト内の他のリソースへの参照として追加できます。

関連項目