There is no breaking change with this version. However, if you are using Entity Framework Core, you will need to run the
Add-Migration
command to add a new database migration since some changes done in the module database mappings.
https://blog.abp.io/abp/ABP-Platform-4-4-RC-Has-Been-Released
Please let us know if it works after you try it.
To do it with code;
To remove all other languages and use English ("en-GB") by default, you can update the ConfigureServices
method in the ProjectNameDomainModule
file under the ProjectName.Domain
folder to include the only "en-GB". For example, the content of the ConfigureServices
method should now be as follows:
public override void ConfigureServices(ServiceConfigurationContext context)
{
...
Configure<AbpLocalizationOptions>(options =>
{
options.Languages.Add(new LanguageInfo("en-GB", "en-GB", "English"));
});
...
}
Then you should add the following to the OnApplicationInitialization
method in the ProjectNameHttpApiHostModule
file.
var supportedCultures = new[]
{
new CultureInfo("en-GB")
};
app.UseAbpRequestLocalization(options =>
{
options.DefaultRequestCulture = new RequestCulture("en-GB");
options.SupportedCultures = supportedCultures;
options.SupportedUICultures = supportedCultures;
options.RequestCultureProviders = new List<IRequestCultureProvider>
{
new QueryStringRequestCultureProvider(),
new CookieRequestCultureProvider()
};
});
Then just delete the data in the AbpLanguages
table from the database and run ProjectName.DbMigrator
.
Your issue may be related to mapper. Could you please check?
If the problem is not resolved please share the relevant logs, thank you.
Hi,
Probably your Index.html
file is missing in Angular's root directory, or you may have set the Angular root directory incorrectly while publishing via ISS
.
You can find more detailed information on the subject here.
Thank you for reporting the issue.
I tested this situation and faced a similar situation.
I'm opening an issue about this. By the way, the ticket refunded
Actually, it's up to you, but I suggest you remove it. Because team members reading the code may have difficulty understanding why that code is there.
By the way, you can see the fix made here
Hi,
The best solution would be to update the abp version.
If you have the opportunity to do this, you can make a smooth transition with the abp update
command.
Please let me know if it works in your case.
This is a bug, we will fix it. by the way, ticket refunded : )
For now, can you try the code below;
tenant.AddOrUpdateProperty<Boolean>(
"IsActive",
options =>
{
options.Attributes.Clear();
}
);
Please let me know if it works in your case.
Hello there,
I wrote the necessary codes to reproduce the problem. But it worked fine for me. You can find the codes I wrote to test below;
I updated the MyProjectNameEfCoreEntityExtensionMappings
class in the MyProjectName.EntityFramework
project.
public static class MyProjectNameEfCoreEntityExtensionMappings
{
private static readonly OneTimeRunner OneTimeRunner = new OneTimeRunner();
public static void Configure()
{
MyProjectNameGlobalFeatureConfigurator.Configure();
MyProjectNameModuleExtensionConfigurator.Configure();
OneTimeRunner.Run(() =>
{
ObjectExtensionManager.Instance
.MapEfCoreProperty<Tenant, Boolean?>(
"IsCheck",
(entityBuilder, propertyBuilder) =>
{
propertyBuilder.HasDefaultValue(null);
}
);
});
}
}
Note: Maybe this step is not necessary for you. Note: This class can be used to map extra properties to table fields in the database. So don't forget to add migration and update the database.
Open the MyProjectNameDemoModuleExtensionConfigurator
in the MyProjectName.Domain.Shared
project, and I changed the contents of the ConfigureExtraProperties
method as shown below:
private static void ConfigureExtraProperties()
{
ObjectExtensionManager.Instance.Modules().ConfigureSaas(saas =>
{
saas.ConfigureTenant(tenant =>
{
tenant.AddOrUpdateProperty<Boolean?>(
"IsCheck",
options =>
{
options.DefaultValue = null;
}
);
});
});
}
Result
Please let me know if the solution worked for you :)
As with anything, it's a tradeoff. You can find why in the "Motivation" section of this article.