No, We have mentioned this in the document.
I have refunded your ticket.
Thanks.
hi
Use the MyMainHeader.razor.cs and MyMainHeader.razor
to override MainHeader
MyMainHeader.razor.cs
using System.Threading.Tasks;
using Microsoft.AspNetCore.Components;
using Volo.Abp.AspNetCore.Components.Web;
using Volo.Abp.LeptonTheme.Management;
namespace Cns.Modules.Docusign.Blazor.Server.Host.Pages;
public partial class MyMainHeader
{
[Inject]
private IAbpUtilsService UtilsService { get; set; }
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
if (Menu != null)
{
if (Menu.Placement == MenuPlacement.Top)
{
await UtilsService.AddClassToTagAsync("body", "lp-topmenu");
}
else
{
if (Menu.NavBarStatus == MenuStatus.OpenOnHover)
{
await UtilsService.AddClassToTagAsync("body", "lp-closed");
await UtilsService.RemoveClassFromTagAsync("body", "lp-opened-sidebar");
await UtilsService.RemoveClassFromTagAsync("body", "lp-body-fixed");
}
else
{
await UtilsService.RemoveClassFromTagAsync("body", "lp-closed");
await UtilsService.AddClassToTagAsync("body", "lp-opened-sidebar");
await UtilsService.AddClassToTagAsync("body", "lp-body-fixed");
}
}
}
await InvokeAsync(StateHasChanged);
}
}
async Task MyToggleNavbarStatusAsync()
{
if (Menu != null)
{
Menu.ToggleNavbarStatus();
if (Menu.Placement == MenuPlacement.Top)
{
await UtilsService.AddClassToTagAsync("body", "lp-topmenu");
}
else
{
if (Menu.NavBarStatus == MenuStatus.OpenOnHover)
{
await UtilsService.AddClassToTagAsync("body", "lp-closed");
await UtilsService.RemoveClassFromTagAsync("body", "lp-opened-sidebar");
await UtilsService.RemoveClassFromTagAsync("body", "lp-body-fixed");
}
else
{
await UtilsService.RemoveClassFromTagAsync("body", "lp-closed");
await UtilsService.AddClassToTagAsync("body", "lp-opened-sidebar");
await UtilsService.AddClassToTagAsync("body", "lp-body-fixed");
}
}
}
}
protected virtual async Task OnNavBarMouseOverAsync()
{
//TODO: MOUSEOVER IS NOT PERFORMANT, WE SHOULD USE MOUSEENTER/MOUSELEAVE
if (Menu != null)
{
if (Menu.NavBarStatus == MenuStatus.OpenOnHover)
{
if (await UtilsService.HasClassOnTagAsync("body", "lp-closed"))
{
await UtilsService.AddClassToTagAsync("body", "lp-extended");
}
}
}
}
protected virtual async Task OnNavbarMouseOutAsync()
{
if (Menu != null)
{
if (Menu.NavBarStatus == MenuStatus.OpenOnHover)
{
if (await UtilsService.HasClassOnTagAsync("body", "lp-closed"))
{
await UtilsService.RemoveClassFromTagAsync("body", "lp-extended");
}
}
}
}
protected virtual void ToggleToolbarNav()
{
IsToolbarNavShown = !IsToolbarNavShown;
}
protected virtual void ToggleSidebarNav()
{
IsSidebarNavShown = !IsSidebarNavShown;
}
}
MyMainHeader.razor
@using Volo.Abp.AspNetCore.Components.Web.LeptonTheme.Components.ApplicationLayout.Navigation
@using Volo.Abp.DependencyInjection
@using Volo.Abp.LeptonTheme.Management
@using Volo.Abp.AspNetCore.Components.Web.LeptonTheme.Components.ApplicationLayout.MainHeader
@inherits Volo.Abp.AspNetCore.Components.Web.LeptonTheme.Components.ApplicationLayout.MainHeader.MainHeader
@attribute [Dependency(ReplaceServices = true)]
@attribute [ExposeServices(typeof(Volo.Abp.AspNetCore.Components.Web.LeptonTheme.Components.ApplicationLayout.MainHeader.MainHeader))]
<header>
<MainHeaderBranding/>
<nav class="navbar navbar-expand-xl navbar-dark d-lg-none nav-mobile">
<button @onclick="ToggleToolbarNav" class="navbar-toggler border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navbarToolbar" aria-controls="navbarText" aria-expanded="false" aria-label="Toggle navigation">
<i class="fa fa-user"></i>
</button>
<button @onclick="ToggleSidebarNav" class="navbar-toggler border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSidebar" aria-controls="navbarText" aria-expanded="false" aria-label="Toggle navigation">
<i class="fa fa-align-justify"></i>
</button>
</nav>
<nav class="navbar navbar-expand-lg user-nav-mobile">
<div class="collapse navbar-collapse d-lg-block toolbar-nav-wrapper @(IsToolbarNavShown ? "show" : "")" id="navbarToolbar">
<ul class="navbar-nav toolbar-nav ms-auto">
<MainHeaderToolbar/>
</ul>
</div>
</nav>
<div class="lp-sidebar collapse navbar-collapse d-lg-block @(IsSidebarNavShown ? "show" : "")" id="navbarSidebar" @onmouseover="OnNavBarMouseOverAsync" @onmouseout="OnNavbarMouseOutAsync">
<div class="lp-sidebar-header">
<div class="lp-toggle-sidebar" @onclick="MyToggleNavbarStatusAsync">
<i class="fa fa-align-left material-icons lp-open-icon"></i>
<i class="fa fa-align-justify material-icons lp-close-icon"></i>
</div>
</div>
<div class="lp-sidebar-wrapper">
<MainSiderbar/>
</div>
</div>
</header>
great
: )
hi
Have you tried this?
public virtual async Task<PagedResultDto<CityWithNavigationPropertiesDto>> GetListAsync(GetCitiesInput input)
{
var totalCount = await _cityRepository.GetCountAsync(input.FilterText, input.Name, input.IsActive, input.CountryId);
var items = await _cityRepository.GetListWithNavigationPropertiesAsync(input.FilterText, input.Name, input.IsActive, input.CountryId, input.Sorting, input.MaxResultCount, input.SkipCount);
var dto = ObjectMapper.Map<List<CityWithNavigationProperties>, List<CityWithNavigationPropertiesDto>>(items);
var tmp = dto.FirstOrDefault();
tmp.City.Name = "newValue";
return new PagedResultDto<CityWithNavigationPropertiesDto>
{
TotalCount = totalCount,
Items = dto
};
}
Of course if you don't want to change the entities, You can inject the Read-Only Repositories
see https://github.com/abpframework/abp/pull/17421
ok.
If I understand correctly, your angular has got an access_token
http://localhost:4200/oidcredirect#access_token=eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIiw
access token
to call your website's API to verify that it is correct.
For example:GET /api/account/my-profile
Authorization: Bearer <your token>
/api/abp/application-configuration
request headershi
You can check these links. https://abp.io/support/questions/2042/ABP-Background-Job-retry https://github.com/abpframework/abp/issues/10583