Migrazione da .NET Framework
Migrazione a .NET 6.0
cTrader Windows è migrato da .NET Framework a .NET 6.0 nella versione 4.2. Ciò ha comportato una serie di modifiche significative all'interfaccia utente e al modo in cui i cBot e gli indicatori vengono compilati e creati.
Modifiche principali
Prima della migrazione, cTrader utilizzava .NET Framework 4.0 (e la versione 4 di C#). Tutti gli algoritmi venivano eseguiti all'interno del processo principale di cTrader Windows.
Dopo la migrazione, cTrader utilizza processi secondari separati per indicatori e cBot. Utilizza inoltre un pacchetto NuGet dedicato per la creazione di file .algo.
Detto questo, le nuove versioni di cTrader sono retrocompatibili con il codice scritto prima della migrazione. Fatte salve alcune eccezioni, puoi utilizzare liberamente indicatori e cBot creati in versioni precedenti di cTrader.
Nota
Alcuni nomi di parametri e metodi sono stati modificati durante la migrazione. Quando crei i tuoi vecchi cBot o indicatori in versioni più recenti di cTrader, potresti ricevere errori o avvisi di creazione a causa di ciò. Consulta la libreria di riferimento per conoscere i nuovi nomi di metodi o parametri e gli overload dei metodi.
Come migrare a .NET 6.0
Per migrare da .NET Framework a .NET 6.0, ricrea i tuoi indicatori e cBot all'interno di cTrader Windows 4.2 o versioni successive. Durante la ricreazione, cTrader modificherà automaticamente la struttura del progetto .NET nel nuovo stile SDK.
Dopo la ricreazione, modifica il framework di destinazione del tuo indicatore o cBot in .NET 6.0 tramite il menu a discesa Framework di destinazione.

Testa il tuo indicatore o cBot dopo la ricreazione.
Nota
Se il tuo indicatore o cBot utilizza i diritti di accesso File, Registry o Internet, modificali in FullAccess.
Nella versione 4.2, i cBot e gli indicatori che utilizzano più thread non possono chiamare alcun membro dell'API. Questo può essere risolto utilizzando il metodo BeginInvokeOnMainThread per chiamare un metodo o un membro dell'API. In caso contrario, il tuo codice genererà un errore.
Poiché l'API di cTrader Algo non è thread-safe, devi utilizzare il metodo BeginInvokeOnMainThread ogni volta che chiami o accedi a un membro dell'API.