我从.NET Core 1.1升级到.NET Core 2.0并遇到以下问题(我还升级了一些库以支持.net core 2.0)
CS1929’ConfigurationStoreOptions’不包含’UseNpgsql’的定义,并且最好的扩展方法重载’NpgsqlDbContextOptionsExtensions.UseNpgsql(DbContextOptionsBuilder,string,Action)’需要一个’DbContextOptionsBuilder’类型的接收器
Startup.cs
services.AddIdentityServer()
.AddSigningCredential(Certificate.Get())
.AddAspNetIdentity<User>()
.AddConfigurationStore(builder =>
builder.UseNpgsql(connectionString, options =>
options.MigrationsAssembly(migrationsAssembly)))
.AddOperationalStore(builder =>
builder.UseNpgsql(connectionString, options =>
options.MigrationsAssembly(migrationsAssembly)));
使用UsesqlServer时的相同问题
// configure identity server with in-memory users, but EF stores for clients and resources
services.AddIdentityServer()
.AddTemporarySigningCredential()
.AddTestUsers(Config.GetUsers())
.AddConfigurationStore(builder =>
builder.UsesqlServer(connectionString, options =>
options.MigrationsAssembly(migrationsAssembly)))
.AddOperationalStore(builder =>
builder.UsesqlServer(connectionString, options =>
options.MigrationsAssembly(migrationsAssembly)));
http://docs.identityserver.io/en/release/quickstarts/8_entity_framework.html
注意:我添加了“使用Microsoft.EntityFrameworkCore;”
解决方法:
解:
services.AddIdentityServer()
.AddSigningCredential(Certificate.Get())
.AddAspNetIdentity<User>()
.AddConfigurationStore(options =>
{
options.ConfigureDbContext = builder =>
builder.UseNpgsql(connectionString,
sql => sql.MigrationsAssembly(migrationsAssembly));
})
// this adds the operational data from DB (codes, tokens, consents)
.AddOperationalStore(options =>
{
options.ConfigureDbContext = builder =>
builder.UseNpgsql(connectionString,
sql => sql.MigrationsAssembly(migrationsAssembly));
// this enables automatic token cleanup. this is optional.
options.EnabletokenCleanup = true;
options.TokenCleanupInterval = 30;
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。