Search code examples
c#firebirdfirebird-.net-provider

Firebird Listener like TableDependency in SQL Server


I am working on a C# (Visual Studio 2019) Form application and I need to fetch some table data from a Firebird database. For SQL Server, I am doing it successfully with TableDependency but in Firebird I am trying to do something similar to listen any record inserted in a Firebird table. Can anyone you please help? Listener needs to listen always if there is a new record in a table.


Solution

  •     static void Main(string[] args)
        {
            try
            {
                using (var events = new FbRemoteEvent(@"database=localhost:Some.FDB;user=sysdba;password=masterkey"))
                {
                    //events.RemoteEventCounts += (sender, e) => Console.WriteLine($"Event: {e.Name} | Counts: {e.Counts}");
                    events.RemoteEventCounts += (sender, e) => rinIt(e); ;
                    events.RemoteEventError += (sender, e) => Console.WriteLine($"ERROR: {e.Error}");
                    events.QueueEvents("SHOOTSALES");
                    Console.WriteLine("Listening...");
                    Console.ReadLine();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error...");
                Console.ReadLine();
            }
    
            void rinIt(FbRemoteEventCountsEventArgs e)
            {
                Console.WriteLine($"Event: {e.Name} | Counts: {e.Counts}");
            }
    
        }