Problemi di connessione a iSeries da .NET Core
Questo è il seguito della seguente domanda: Problemi di connessione a iSeries da .NET Core
Il problema iniziale è stato risolto impostando un numero di porta. Ora sto riscontrando il problema della connessione che sembra aprirsi, tuttavia, appeso al .Open()passaggio effettivo , ovvero, senza mai passare alla riga di codice successiva. Per riferimento, ecco il mio blocco di codice:
public static DB2Connection GetDatabaseConnection(string connectionString)
{
DB2Connection DB2Connection = new DB2Connection(connectionString);
DB2Connection.SystemNaming = true;
try
{
DB2Connection.Open();
return DB2Connection;
}
catch (Exception ex)
{
throw ex;
}
}
E la mia stringa di connessione è in questo formato: Server=###.###.###.###:#####;Database=DATABASE;UID=USER;PWD=PASSWORD;LibraryList=LIBRARY,LIST
Guardando i log su i Navigator, vedo che c'è un nome di lavoro Qzhqssrvquando viene aperto, con l'utente Quser, lo stato Runninge il tipo Prestart batch - Server. Esaminando i registri per quella voce, vedo Job #####/QUSER/QZHQSSRV started on DATE at TIME in subsystem QUSRWRK in QSYS. Job entered system on DATE at TIME. Tuttavia, non sembra continuare oltre.
Esaminando i log per un'operazione simile, quando mi connetto tramite Access Client Solutions, ottengo molte più informazioni e più passaggi nei log. Questo mi porta a credere che il sistema stia aspettando che io invii ulteriori informazioni, tuttavia, la mia domanda è ancora bloccata .Open()- quindi forse c'è qualcos'altro che avrei dovuto inviare come parte delle .Open()istruzioni. Se è così, non sono sicuro di cosa sarebbe.
Qualsiasi opinione sarà molto apprezzata. Grazie!
Risposte
Giusto per chiudere questo argomento, il problema era proprio la mancanza di una licenza. La connessione sulla porta 446 era l'approccio corretto e, una volta ottenuta una licenza, siamo stati in grado di far funzionare la connessione. Grazie @nfgl!