4

通常のfirebirdサーバーは、登録されたイベントのいずれかを発生させるときに、登録されたすべてのイベントカウントを送信しますか?

例として、firebirdsサイトで私はこれを行います:

class FirebirdListenerTest
{
    public FirebirdListenerTest()
    {
        try
        {
            FbConnectionStringBuilder cs = new FbConnectionStringBuilder();
            cs.DataSource = "localhost";
            cs.Database = "C:\\FIREBIRD\\TEST.GDB";
            cs.UserID = "SYSDBA";
            cs.Password = "masterkey";
            cs.Charset = "NONE";

            FbConnection connection = new FbConnection(cs.ToString());
            connection.Open();

            FbRemoteEvent revent = new FbRemoteEvent(connection);
            revent.AddEvents(new string[] { "text_changed", "text_inserted", "justtest_event" });

            // Add callback to the Firebird events
            revent.RemoteEventCounts += new FbRemoteEventEventHandler(EventCounts);

            // Queue events
            revent.QueueEvents();

            Console.ReadLine();
            connection.Close();
        }
        catch (Exception e)
        {
            Debug.WriteLine(e.ToString());
        }
    }

    static void EventCounts(object sender, FbRemoteEventEventArgs args)
    {
        Console.WriteLine("Event {0} has {1} counts.", args.Name, args.Counts);
    }
}

このようなコードでは、イベントのいずれかが発生した場合、常にすべてのイベントのカウントを取得します。それはどのように機能するべきですか?

4

1 に答える 1

4

はい、そうです。Countsプロパティに基づいてフィルタリングでき、0-nにすることができます。

于 2012-06-26T17:02:39.900 に答える