Activities of "enisn"

Hi,

ABP uses tui-editor for rich text editing.

I hope this steps helps to use it in your application: https://abp.io/support/questions/6343/RichText-input-control

Hi,

It seems we faced the same problem while developing micro-service template and found a different solution.

By a service

We created a centralized localization system with a separate simple Http API manages all the localizaiton. If you create a new microservice solution you'll see this Dynamic Localization option: <img src="/QA/files/3a19d642dc4ba66c8ec4e99eda7f78d3.png" alt="ABP Microservice dynamic localization" width="360" />

This options adds a new project to your solution to provide localizations to other services and more. In this system it supports changing them at runtime dynamically by using Language Management module, but in your case you can aggresively cache them if you do not want to change them at runtime and one-time you can get localizations.

If you interested this approach, I recommend you to create a new microservice template with dynamic localization option and check how it's implemented.

By a common data source (database table, file on cdn etc.)

Or, instead of creating a standalone service for it, each service can seed their own localizations into a shared database and all of your services can use this database or a file on CDN and the table to use localization. But in that case, you'll still need to use reference for Domain.Shared layers to access Solution1Resource, Solution2Resource etc. classes. Still, you can build a custom system to localize with a string resource name instead strong-typed C# class.

Hi,

All the authserver data is seeded into database whenever you run DbMigrator. Can you check appsettings.json and update it, and replace all the localhost URLs with the real domain names. Then run the dbmigrator for the production database. (Configure connectionstring for production in the same appsettings.json file). That will add all the OpenId clients to the database so you can login

Hi,

Can you get the response from AuthServer (44310) for the path /.well-known/openid-configuration path?

Can you check this documentation for IIS? https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/proxy-load-balancer?view=aspnetcore-9.0#iisiis-express-and-aspnet-core-module

Sometimes headers cannot be passed to the application directly when they're running behind a load-balander or a proxy server. Check forwarded headers too https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/proxy-load-balancer?view=aspnetcore-9.0#forwarded-headers-middleware-order

We had a development on the Framework-side and we'll use this new service soon. You can follow it from here: https://github.com/abpframework/abp/pull/22866

It seems, it's not inlcuded in the patch version right now, Can you try adding a refresh button or refresh the page manually?

Refreshing the WebView seems solve the problem

I'll check the team milestone and inform you

Hi,

I showed BasicTheme as an example, you can always replace source-code of LeptonX theme, too. You can add project reference of customized theme to 2 different applications and they can use the same customized version of the theme.

It isn't important if the solution is created by ABP Studi or not, you can still get the source code of the theme by using ABP CLI:

abp get-source Volo.Abp.LeptonXTheme

If you consider using ABP Studio with your older solutions are not created with ABP Studio you can initialize them in ABP Studio by following "File > Initialize Existing Solution" menu item.

We are looking for the cleanest and most maintainable integration approach moving forward.

If you build your own theme and use it everywhere, you can pack you theme as nuget package and push to your private nuget. And your applications use your custom theme with package reference, in that way, even you made a breaking-change, you shouldn't update all the applications immdediately that uses your theme, they can still stay the previous version until you'll apply the breaking-change on them.

You should be able to see them in the table on Text Templates page if you properly implemented IDynamicTemplateDefinitionStore. The module gets them from dynamic store and merges with static store.

You can also put a breakpoint to DynamicTemplateDefinitionAppService's GetAllAsync method to make sure it's executed. If not, check if it's located in the correct layer and make sure it's registered to dependency injection well. You may consider using [ExposeServices] attribute to make sure it's registered properly like this:

[Dependency(ReplaceServices = true)]
[ExposeServices(typeof(IDynamicTemplateDefinitionStore))]
public class DatabaseTemplateDefinitionStore : IDynamicTemplateDefinitionStore, ITransientDependency
{
    // ...
}

You can check LeptonX demo to find a proper component. All the components from this website is done in LeptonX, you can directly get the HTML code and make it work in your application:

x.leptontheme.com


By the way, the component from the screenshot is AbpPageSearchBoxViewComponent from ABP Framework: https://github.com/abpframework/abp/blob/dev/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared/Pages/Shared/Components/AbpPageSearchBox/Default.cshtml

You can easily render it in your page like below:

@await Component.InvokeAsync(typeof(AbpPageSearchBoxViewComponent))

Make sure the following using statement is added:

@using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.Pages.Shared.Components.AbpPageSearchBox
Showing 91 to 100 of 779 entries
Boost Your Development
ABP Live Training
Packages
See Trainings
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v10.1.0-preview. Updated on October 30, 2025, 06:33