# PlcVanguard — Analisi e piano correzioni Stato: tutte le correzioni completate. ## 1. CPU Type Bug (S71500 invece di S7300) ✅ FIXED **File**: `PLCService.cs` **Causa**: Doppia registrazione DI in `Program.cs`: - `AddSingleton(connParam)` con S7300 - `Configure("ConnParam", cfg => ...)` named options `PLCService.GetState()` usava `IOptions` che si legava al named options "ConnParam". Senza un `Configure(...)` unnamed, leggeva i default della classe: `CpuType.S71500`. **Fix**: `PLCService` ora usa `ConnParam` singleton direttamente, eliminato `IOptions<>`. ## 2. Hardcoded "S7-1500" in Dashboard.razor ✅ FIXED **File**: `Dashboard.razor` **Righe**: - ` → SignalR → client remoti ↓ State.razor (Blazor Server, diretto a StateManager) ↓ Persistence (solo DB101, non DB100) ``` ## Riepilogo file modificati 1. `PLCService.cs` — fix CPU type 2. `Dashboard.razor` — hardcoded S7-1500 → @cpuType 3. `PlcStateBroadcaster.cs` — filtro persistenza DB100 4. `State.razor` — polling → eventi real-time