Beispiel #1
0
        static void SqlDatabaseEventHandler_ExecScalarUDFEvent(SqlDatabaseExternalEventArgs e, out SqlDatabaseDataType OutColumnDataType, out object OutColumnValue)
        {
            //if (!ShowEventResults)
            //{
            //    OutColumnDataType = SqlDatabaseDataType.Integer;
            //    OutColumnValue = 11234;
            //    return;
            //}

            // Default value assigned, not to break the code
            OutColumnDataType = SqlDatabaseDataType.Null;
            OutColumnValue    = null;

            //Console.WriteLine(e.SQLText);
            Console.WriteLine($"{e.ArgumentsValue[0].ToString()} - {e.RowId} - {e.IsTransactionOpen} - {e.NoOfChanges} - {e.ArgumentsCount}");
            Console.WriteLine();
            if (e.ArgumentsCount > 0)
            {
                // Usingn Exec1 as first parameter
                // to differentiate between multiple calls
                if (e.ArgumentsValue[0].Equals("Exec1"))
                {
                    OutColumnDataType = SqlDatabaseDataType.Integer;
                    OutColumnValue    = iudfincrement++; // A integer value
                }

                if (e.ArgumentsValue[0].Equals("Exec2") && e.ArgumentsCount >= 5)
                {
                    //Simply join all the arguments
                    string columnoutput = string.Join(",", new object[] { e.ArgumentsValue[1], e.ArgumentsValue[2], e.ArgumentsValue[3], e.ArgumentsValue[4] });
                    OutColumnDataType = SqlDatabaseDataType.Text;
                    OutColumnValue    = columnoutput;
                }
            }
        }
Beispiel #2
0
 private static void SqlDatabaseExternalEventHandler_InsertStatementEvent(SqlDatabaseExternalEventArgs e)
 {
     if (ShowEventResults)
     {
         Console.WriteLine(string.Format("{0} : IsTrans:{1} - {2}", "EVENT INSERT", e.IsTransactionOpen, e.SQLText));
     }
 }
Beispiel #3
0
 private static void SqlDatabaseExternalEventHandler_DataChangeNotificationEvent(int ChangeType, SqlDatabaseExternalEventArgs e)
 {
     if (ShowEventResults)
     {
         Console.WriteLine(string.Format("EVENT DataChange {0} : IsTrans:{1} - {2}", ChangeType, e.IsTransactionOpen, e.SQLText));
     }
 }