yoktu ederiz. Sürüm 1.0.1 ve şimdi, kullanıcı sırlarının kimliğine veya geri dönüş olarak, daha önce project.json'da olduğu gibi bir montaj düzeyi özniteliği belirtmeniz gerekir. https://github.com/aspnet/Announcements/issues/209
Böyle .csproj sırlar id tanımlayabilirsiniz:
<PropertyGroup>
<UserSecretsId>aspnet-TestApp-ce345b64-19cf-4972-b34f-d16f2e7976ed</UserSecretsId>
</PropertyGroup>
Bu aşağıdaki düzey derleme özniteliği üretir İşte
GitHub'dan duyurusudur. Alternatif olarak, onu .csproj dosyasına eklemek yerine, bunu kendiniz ekleyebilirsiniz. Startup.cs: Ayrıca
[assembly: UserSecretsId("aspnet-TestApp-ce345b64-19cf-4972-b34f-d16f2e7976ed")]
, kullanmak olmalıdır: Ben Başlangıç sınıfı kullanılan bu durumda, belirli bir türden mecliste bu özelliğe arayacaktır
builder.AddUserSecrets<Startup>();
.
Not: Bu 2.0 kaldırılacaktır: Ben kullanıcı sırları yapılandırma için source code kontrol ve olmadan AddUserSecrets()
çağırarak
builder.AddUserSecrets();
(1.0.2 ve 1.1.1 eskimiş bunu işaretlediğiniz) tipi yapar bu: Bu sizin aksamındaki UserSecretsId
ayrıntısını bulmak için çalışıyor ve bu başarısız, bu project.json içinde bir bulabilsek kontrol ediyor
var attribute = entryAssembly.GetCustomAttribute<UserSecretsIdAttribute>();
if (attribute != null)
{
return AddUserSecrets(configuration, attribute.UserSecretsId);
}
// try fallback to project.json for legacy support
try
{
var fileProvider = configuration.GetFileProvider();
return AddSecretsFile(configuration, PathHelper.GetSecretsPath(fileProvider));
}
catch
{ }
// Show the error about missing UserSecretIdAttribute instead an error about missing
// project.json as PJ is going away.
throw MissingAttributeException(entryAssembly);
. Ardından (yorumlandığı gibi) proje, artık kullanımdan kaldırıldığı için şikayet etmek istemediğinden eksik öznitelik hakkında bir hata döndürür.
Ayrıca, "UserSecretsId" özelliğine sahip olan projede "Microsoft.Extensions.Configuration.UserSecrets" bağımlılığınız yoksa, öznitelik oluşturulmaz. –
Bu bağımlılığa sahip değilseniz, kullanıcı sırlarını hiç kullanamazsınız. – juunas
Geçici olarak (bir çözümdeki birçok proje arasında ortak bir tabloyu paylaştığım bir "temel" proje ile) bağlıydım.Geçici olarak kullanırken, assembly özniteliği eksikti, ancak bağımlılığı doğrudan eklediğimde hata giderildi. –