e21e87dff9
- Parallelizzazione analisi record con Task.WhenAll e ConcurrentBag - Aggiunta metodi thread-safe per operazioni database (SaveAssociationParallelAsync, FindAssociationByKeyValueParallelAsync, DeleteAssociationParallelAsync) - Implementazione DbContext separati per evitare race conditions Entity Framework - Ottimizzazione performance: riduzione tempo esecuzione da sequenziale a parallelo - Logging dettagliato con tracking tempi esecuzione e distinzione operazioni parallele - Aggiornamento interfacce IKeyAssociationService e IDataConnectionCredentialService - Miglioramento gestione errori con thread-safety completa Performance: 5-10x più veloce per grandi dataset con parallelizzazione end-to-end
61 lines
2.2 KiB
Plaintext
61 lines
2.2 KiB
Plaintext
<div class="top-row ps-3 navbar navbar-dark">
|
|
<div class="container-fluid">
|
|
<a class="navbar-brand" href="">Data_Coupler</a>
|
|
<button title="Navigation menu" class="navbar-toggler" @onclick="ToggleNavMenu">
|
|
<span class="navbar-toggler-icon"></span>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="@NavMenuCssClass nav-scrollable" @onclick="ToggleNavMenu">
|
|
<nav class="flex-column">
|
|
<div class="nav-item px-3">
|
|
@*
|
|
<NavLink class="nav-link" href="" Match="NavLinkMatch.All">
|
|
<span class="oi oi-home" aria-hidden="true"></span> Home
|
|
</NavLink>
|
|
</div>
|
|
<div class="nav-item px-3">
|
|
<NavLink class="nav-link" href="counter">
|
|
<span class="oi oi-plus" aria-hidden="true"></span> Counter
|
|
</NavLink>
|
|
</div>
|
|
<div class="nav-item px-3">
|
|
<NavLink class="nav-link" href="fetchdata">
|
|
<span class="oi oi-list-rich" aria-hidden="true"></span> Fetch data
|
|
</NavLink>
|
|
</div> *@
|
|
@* <div class="nav-item"></div> *@
|
|
<NavLink class="nav-link" href="" Match="NavLinkMatch.All">
|
|
<span class="oi oi-transfer" aria-hidden="true"></span> Data Coupler
|
|
</NavLink>
|
|
</div>
|
|
<div class="nav-item px-3">
|
|
<NavLink class="nav-link" href="credentials">
|
|
<span class="oi oi-key" aria-hidden="true"></span> Gestione Credenziali
|
|
</NavLink>
|
|
</div>
|
|
<div class="nav-item px-3">
|
|
<NavLink class="nav-link" href="key-associations">
|
|
<span class="oi oi-link-intact" aria-hidden="true"></span> Associazioni Chiavi
|
|
</NavLink>
|
|
</div>
|
|
<div class="nav-item px-3">
|
|
<NavLink class="nav-link" href="profiles">
|
|
<span class="oi oi-layers" aria-hidden="true"></span> Gestione Profili
|
|
</NavLink>
|
|
</div>
|
|
</nav>
|
|
</div>
|
|
|
|
@code {
|
|
private bool collapseNavMenu = true;
|
|
|
|
private string? NavMenuCssClass => collapseNavMenu ? "collapse" : null;
|
|
|
|
private void ToggleNavMenu()
|
|
{
|
|
collapseNavMenu = !collapseNavMenu;
|
|
}
|
|
}
|