Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Diagnostics;
- using Oracle.DataAccess.Client;
- namespace OracleNotification
- {
- class Program
- {
- private static OracleDependency _dep;
- private const string ConnString = "DATA SOURCE=ORCL; User Id=USERNAME; Password=PASS;";
- static void Main(string[] args)
- {
- SetUpNotification();
- Console.ReadLine();
- DeRegisterNotification();
- }
- private static void SetUpNotification()
- {
- try
- {
- using (var conn = new OracleConnection(ConnString))
- {
- var cmd = new OracleCommand("Select * from exchnge.JMORA_TEST3", conn);
- conn.Open();
- cmd.AddRowid = true;
- _dep = new OracleDependency(cmd, false, 0, true);
- _dep.OnChange += dep_OnChanges;
- cmd.ExecuteNonQuery();
- conn.Close();
- }
- }
- catch (Exception e)
- {
- Debug.WriteLine(e.Message);
- }
- }
- private static void dep_OnChanges(object sender, OracleNotificationEventArgs eventArgs)
- {
- var data = eventArgs.Details.DefaultView.Table.Rows[0][2].ToString();
- Debug.WriteLine(data);
- }
- private static void DeRegisterNotification()
- {
- using (var conn = new OracleConnection(ConnString))
- {
- conn.Open();
- _dep.RemoveRegistration(conn);
- conn.Close();
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment