Hi, after you have configured external providers for the host side:
Then, you can see the "external provider" tab in the settings -> account section for the tenant (you may need to login as the admin user of the related tenant):
As you can see from the figure above, "amazon" is the tenant name and the "admin" is the username of the tenant admin, and it's possible to configure the client-id and client-secret for the related external provider.
Hi, yes you can generate CRUD pages via ABP CLI, please refer to the Generating CRUD Pages via Command Line section in the ABP Suite documentation.
Let me know, if you need further info. Regards.
Hi, EngincanV I can not understand your answers... I will try ask different way. I am using only ABP Suite to make all Entities. I never write any code as all parts are generated automatically, and I can create all needed Entities with properties using ABP Suite only. I am not dealing with Visual Studio as it was not part of my duties :)
As I mentioned I did Step 6 in ABP Suite. I created new Entity with properties. And then I want to run
dotnet ef database updateto have tables in database, but I have no migration file generated. So I can not create tables. So please provide steps I must do after my Step 6.
Hi, sorry for the inconvenience. I will explain in detail:
Right click to the [DemoSln.EntityFrameworkCore] project, then select Ef Core CLI -> Add migration. It will open a dialog as below:
Write a migration name and then click the OK button to create a migration.
dotnet ef database update command in the [DemoSln.EntityFrameworkCore] project or via ABP Studio:I hope I was able to explain it in detail. If there is a step that is unclear, feel free to ask. Regards.
protected override void HandlePropertiesBeforeSave()
{
var entries = ChangeTracker.Entries().ToList();
foreach (var entry in entries)
{
HandleExtraPropertiesOnSave(entry);if (entry.State.IsIn(EntityState.Modified, EntityState.Deleted)) { UpdateConcurrencyStamp(entry); } } foreach (var entry in AbpEfCoreNavigationHelper.GetChangedEntityEntries().Where(x => x.State == EntityState.Unchanged)) { UpdateConcurrencyStamp(entry); } }Hi, as it is override in dbcontext class, can you please confirm if it can impact the performance?
Hi, it should not impact performance. In our current version, this code is already implemented in the AbpDbContext implementation (I mean in v9.0+).
Regards.
Alright, i've sent an email to support for assistance.
Hi, thanks. We have received your email and will review the solution to provide you with an answer.
Regards.
Hi, it seems your problem is the same as https://abp.io/support/questions/8856/Facing-issue-with-deployment-on-appService. So, you can refer to our documentation to see how to configure OpenIddict: https://abp.io/docs/latest/deployment/configuring-openiddict
After you have applied the suggested action, then it should be fixed.
Please let me know, if it still happening. Best regards.
Hi, even though you mentioned that you haven't added custom code for SMTP and are not directly using SmtpClient, the ABP framework itself often uses email for various functionalities like user registration confirmation, password reset, etc.
In debug mode, emails are logged in a txt file (under Logs folders), not sent. On the other hand, in production mode, the SMTP settings are coming from the defined configurations in the SettingManagement page. (Btw, the related module is included in the AdministrationService, where all core ABP Pro modules reside.)
Can you check your SMTP settings are correct in there please? (you can click the test email button to try your config)
Here is the code, that makes the email sender log email content instead of sent it on debug mode (you can see this code in the module class of authserver module):
private void ConfigureEmailSender(ServiceConfigurationContext context)
{
#if DEBUG
context.Services.Replace(ServiceDescriptor.Singleton<IEmailSender, NullEmailSender>());
#endif
}
Hi, this is a known issue that sometimes occurs with company email servers. Here are a few possible reasons:
Can you please check and confirm these two situations is not the case?
Hi, EngincanV
I created new Entity [Promotion] in [DemoSolution] and NOT in [FirstModule]. Issus is during adding new Entity to [DemoSolution].
Hi, since you mentioned that you selected FirstModule to generate CRUD pages (in this thread), I have tried on that solution.
Now, I have tried on DemoSolution and still not able to reproduce:
Used the entity name as
PromotionOnDemoSlnbut it does not matter.
I have followed your steps but unable to produce the problem. (Check the thread and your steps provided).
So, please try to create in a fresh solution and share the exact steps with me, so I can reproduce the problem.
Regards.
Hi, EngincanV
So I need some example how to build db migration file for entities inside Modules.
May you show some example code here. For Example I want to add new entity [Product] with properties [Title], [Price]. So I migration files will be look like?
Hi, in the modular monolith approach, we suggest to create migrations in the host application's ef core project. But, if you still want to create a migration in the modules, then you can create a DbContextFactory class that implements IDesignTimeDbContextFactory<OrderingServiceDbContext> (like in the main application, you can check its implementation) and then basically execute the dotnet ef migrations add MigrationName in your module to create migrations.