Hi,
Open EntityFrameworkCoreModule class and remove Configure<AbpDbContextOptions>...
code block.
Open EntityFrameworkCoreDbMigrationsModule clsss and add following code:
context.Services.AddEFSecondLevelCache(options =>
options.UseMemoryCacheProvider().DisableLogging(true).UseCacheKeyPrefix("EF_"));
Configure<AbpDbContextOptions>(options =>
{
options.Configure(c =>
{
c.UseSqlServer(builder =>
{
builder.CommandTimeout((int) TimeSpan.FromMinutes(3).TotalSeconds)
.MigrationsAssembly(typeof(QaEntityFrameworkCoreDbMigrationsModule).Assembly.FullName);
}).AddInterceptors(c.ServiceProvider.GetRequiredService<SecondLevelCacheInterceptor>());
});
});
Hi,
It looks like a problem, can you provide steps to reproduce? thanks. if there is a problem, we will fix it.
hi,
This way will be better
c.DbContextOptions.UseTriggers(t =>
{
t.UseApplicationScopedServiceProviderAccessor(_ => _.GetRequiredService<IHttpContextAccessor>().HttpContext?.RequestServices);
});
Hi,
You can try :
services.AddAbpSwaggerGenWithOAuth(...,options =>
{
......
options.CustomSchemaIds(type => type.ToString());
});
ABP uses a naming convention to register DI.
Your repository name is CompanyBRRepository
and it should be CompanyBranchRepository
Also, see: https://docs.abp.io/en/abp/latest/Dependency-Injection
Hi,
Try:
public class AppUser : ...
{
public ExistProfile ExistProfile {get;set}
}
public class ExistProfile : ...
{
public Guid AppUserId {get;set;}
public AppUser AppUser {get;set;}
}
MigrationsDbContext
builder.Entity<ExistProfile>(b =>
{
b.Ignore(x => x.AppUser);
b.HasOne<IdentityUser>().WithOne().HasForeignKey<ExistProfile>(x => x.AppUserId);
});
DbContext
builder.Entity<ExistProfile>(b =>
{
b.HasOne(x => x.AppUser).WithOne(x => x.ExistProfile).HasForeignKey<ExistProfile>(x => x.AppUserId);
});
Hi,
Maybe I can check it remotely. shiwei.liang@volosoft.com
Replace by Id as AppUserId does not exists, Replace by Id as MyExistingEntityId does not exists
You should not do this, AppUserId
and MyExistingEntityId
are foreign key(base entity relationship).
See : https://docs.microsoft.com/en-us/ef/core/modeling/relationships?tabs=fluent-api,fluent-api-simple-key,simple-key#fully-defined-relationships
Your entity should be:
One to one relationship
public class AppUser : .....
{
public Guid MyExistingEntityId {get;set;}
public MyExistingEntity MyExistingEntity {get;set;}
}
public class MyExistingEntity : ....
{
public Guid AppUserId {get;set;}
public AppUser AppUser {get;set;}
}
One to many relationship
public class AppUser : .....
{
public List<MyExistingEntity> MyExistingEntities {get;set;}
}
public class MyExistingEntity : ....
{
public Guid AppUserId {get;set;}
public AppUser AppUser {get;set;}
}
I am available for remote connection, it might be faster to solve this than the way we do actually
Ok, we can. shiwei.liang@volosoft.com
https://support.abp.io/QA/Questions/1424 fixed
Can you try again?