Activities of "maliming"

hi

You can inject the interface(ITenantAppService) from Application.Contracts .

hi

You can add a global javascript to dynamically change its height and top according to the logo.

hi

Please remove the offline_access from oAuthConfig to disable the refresh token.

const oAuthConfig = {
  responseType: 'code',
  scope: 'offline_access MyProjectName'
};

We could write an angular interceptor and use o-auth service to invalidate the token. This will not work for mvc sites

Did you select the Remember me when you login MVC website?

The default authentication cookie of MVC is session. It will be invalid after closing/quitting the browser.

hi

You can create your LeptonErrorViewComponent and use it here.

hi

You can try to create a new 7.1.0 project and compare the code. The blazor wasm project needs to run abp bundle to update the js and css code.

How-to-customize-an-ABP-project

https://support.abp.io/QA/Questions/160/How-to-customize-an-ABP-project

hi

The project you shared is incomplete.

You can add "@volo/chat": "~7.1.0" to your packages.json and run abp install-libs command.

The project file "CustomChatBotModuleWithVolo.ChatModule/src/ten3.ChatBot.GenerateCodeFromSpecFiles.Console/ten3.ChatBot.GenerateCodeFromSpecFiles.Console.csproj" was not found.

hi

namespace Volo.Abp.AspNetCore.Mvc.UI.Theme.Lepton.Views.Error.DefaultErrorComponent;
public class LeptonErrorViewComponent

Volo.Abp.AspNetCore.Mvc.UI.Theme.Lepton/Views/Error/DefaultErrorComponent/LeptonErrorViewComponent.cs

https://docs.abp.io/en/abp/latest/UI/AspNetCore/Customization-User-Interface#overriding-a-page-model-c

hi

Considering that sqlite is more similar to the actual database

https://learn.microsoft.com/en-us/ef/core/testing/

hi

https://support.abp.io/QA/Questions/632/How-can-I-download-the-source-code-of-the-framework-Angular-packages-theme-and-pro-modules

hi

You can rename your SearchModel class to MySearchModel or inherit the Volo.Docs.Pages.Documents.SearchModel.

[Dependency(ReplaceServices = true)]
[ExposeServices(typeof(SearchModel), typeof(MySearchModel))]
public class MySearchModel : SearchModel
{
    private readonly IProjectAppService _projectAppService;
    private readonly IDocumentAppService _documentAppService;
    private readonly HtmlEncoder _encoder;

    public MySearchModel(
        IProjectAppService projectAppService,
        IDocumentAppService documentAppService,
        HtmlEncoder encoder)
        : base(projectAppService, documentAppService, encoder)
    {
        _projectAppService = projectAppService;
        _documentAppService = documentAppService;
        _encoder = encoder;
    }

    public override async Task<IActionResult> OnGetAsync(string keyword)
    {
        if (!await _documentAppService.FullSearchEnabledAsync())
        {
            return RedirectToPage("Index");
        }

        KeyWord = keyword;

        Project = await _projectAppService.GetAsync(ProjectName);

        var output = await _projectAppService.GetVersionsAsync(Project.ShortName);

        var versions = output.Items.ToList();

        if (versions.Any() &&
            string.Equals(Version, DocsAppConsts.Latest, StringComparison.OrdinalIgnoreCase))
        {
            if ((!Project.ExtraProperties.ContainsKey("GithubVersionProviderSource") ||
                 (GithubVersionProviderSource) (long) Project.ExtraProperties["GithubVersionProviderSource"] ==GithubVersionProviderSource.Releases) &&
                !string.IsNullOrEmpty(Project.LatestVersionBranchName))
            {
                Version = Project.LatestVersionBranchName;
            }
            else
            {
                Version = (versions.FirstOrDefault(v => !SemanticVersionHelper.IsPreRelease(v.Name)) ?? versions.First()).Name;
            }
        }

        SearchOutputs = await _documentAppService.SearchAsync(new DocumentSearchInput
        {
            ProjectId = Project.Id,
            Context = KeyWord,
            LanguageCode = LanguageCode,
            Version = Version
        });

        var highlightTag1 = Guid.NewGuid().ToString();
        var highlightTag2 = Guid.NewGuid().ToString();
        foreach (var searchOutput in SearchOutputs)
        {
            for (var i = 0; i < searchOutput.Highlight.Count; i++)
            {
                searchOutput.Highlight[i] = _encoder
                    .Encode(searchOutput.Highlight[i].Replace("<highlight>", highlightTag1)
                        .Replace("</highlight>", highlightTag2))
                    .Replace(highlightTag1, "<highlight>").Replace(highlightTag2, "</highlight>");
            }
        }

        return Page();
    }

}
Showing 6431 to 6440 of 10690 entries
Learn More, Pay Less
33% OFF
All Trainings!
Get Your Deal
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v10.0.0-preview. Updated on September 16, 2025, 10:35