Come utilizzare gli eventi su una connessione di database Firebird embedded?
-
09-10-2019 - |
Domanda
Se mi collego ad un database Firebird embedded, e creare un evento remoto, ottengo System.NotSupportedException: metodo specificato non è supportato .. sul costruttore.
_fbRemoteEvent = new FbRemoteEvent(_fbConnection); //_fbConnection is valid and Opened
Guardando il codice sorgente da stack di chiamate, si porta a FesDatabase.cs con
RemoteEvent IDatabase.CreateEvent()
{
throw new NotSupportedException();
}
Io uso la versione integrata per i test di fine automatizzata ... C'è qualcosa che posso fare per ottenere evento dal database incorporato in un contesto di prova?
Soluzione
Gli eventi sono, purtroppo, non è supportato in modalità incorporata in Firebird - possono essere eseguiti solo in rete. Ciò è dovuto al fatto che l'intero protocollo di creazione di un gestore di eventi prevede la creazione di una seconda connessione di rete al server FB - come non si sta utilizzando una connessione di rete a tutti in modalità incorporata, questo non funzionerà.
Altri suggerimenti
Gli eventi sono supportati in Firebird embedded, ma il provider Firebird ado.net (FirebirdSql.Data.FirebirdClient) non implementare il supporto per gli eventi quando si usa Firebird embedded.