次の方法で共有


接続文字列がありません

.NET .NET Aspireでは、コードは任意の文字列 ("database" など) を持つリソースを識別します。 他の場所でリソースを使用しているコードは、同じ文字列を使用する必要があります。そうしないと、それらのリレーションシップを正しく構成できません。

症状

アプリでいずれかの統合を必要とするサービスにアプリがアクセスすると、次のような例外で失敗する可能性があります。

"InvalidOperationException: ConnectionString が見つかりません。"

考えられる解決策

リソースの名前 (データベース リソースなど) が、AppHost と失敗したサービスで同じであることを確認します。

たとえば、AppHost で次のような名前の PostgreSQL リソース db1 定義されている場合は、次のようになります。

var db1 = builder.AddPostgres("pg1").AddDatabase("db1");

その後、サービスは同じ名前のリソース db1解決する必要があります。

var builder = WebApplication.CreateBuilder(args);

builder.AddNpgsqlDbContext<MyDb1Context>("db1");

AppHost で指定された値以外の値を指定すると、上記の例外メッセージが表示されます。