public MyTraceEventArgs(TraceEventArgs args) { EventClass = args.EventClass; EventSubclass = args.EventSubclass; DatabaseName = args.DatabaseName; ObjectPath = args.ObjectPath; TextData = args.TextData; }
public MyTraceEventArgs(SqlDataReader reader) { EventClass = (TraceEventClass)Enum.ToObject(typeof(TraceEventClass), Convert.ToInt64(reader["EventClass"])); //can't parse EventSubclass like EventClass //following code based on http://msdn2.microsoft.com/en-us/library/ms174472.aspx if (!Convert.IsDBNull(reader["EventSubclass"])) { if (EventClass == TraceEventClass.QueryEnd) { if (Convert.ToInt64(reader["EventSubclass"]) == 0) { EventSubclass = TraceEventSubclass.MdxQuery; } else if (Convert.ToInt64(reader["EventSubclass"]) == 1) { EventSubclass = TraceEventSubclass.DmxQuery; } else if (Convert.ToInt64(reader["EventSubclass"]) == 2) { EventSubclass = TraceEventSubclass.SqlQuery; } else if (Convert.ToInt64(reader["EventSubclass"]) == 3) { EventSubclass = TraceEventSubclass.DAXQuery; } else { EventSubclass = TraceEventSubclass.NotAvailable; } } } if (!Convert.IsDBNull(reader["ObjectPath"])) { string[] pathParts = reader["ObjectPath"].ToString().Split('.'); DatabaseName = pathParts[1]; //TODO: path contains ID... won't match name? } else if (ReaderContainsColumn(reader, "DatabaseName") && !Convert.IsDBNull(reader["DatabaseName"])) { DatabaseName = reader["DatabaseName"].ToString(); } else { DatabaseName = null; } if (!Convert.IsDBNull(reader["ObjectPath"])) { ObjectPath = reader["ObjectPath"].ToString(); } if (!Convert.IsDBNull(reader["TextData"])) { TextData = reader["TextData"].ToString(); } }
internal static string ToName(this TraceEventSubclass subclass) { return(Enum.GetName(typeof(TraceEventSubclass), subclass)); }
public MyTraceEventArgs(SqlDataReader reader) { EventClass = (TraceEventClass)Enum.ToObject(typeof(TraceEventClass), Convert.ToInt64(reader["EventClass"])); //can't parse EventSubclass like EventClass //following code based on http://msdn2.microsoft.com/en-us/library/ms174472.aspx if (!Convert.IsDBNull(reader["EventSubclass"])) { if (EventClass == TraceEventClass.QueryEnd) { if (Convert.ToInt64(reader["EventSubclass"]) == 0) EventSubclass = TraceEventSubclass.MdxQuery; else if (Convert.ToInt64(reader["EventSubclass"]) == 1) EventSubclass = TraceEventSubclass.DmxQuery; else if (Convert.ToInt64(reader["EventSubclass"]) == 2) EventSubclass = TraceEventSubclass.SqlQuery; else EventSubclass = TraceEventSubclass.NotAvailable; } } if (!Convert.IsDBNull(reader["ObjectPath"])) { string[] pathParts = reader["ObjectPath"].ToString().Split('.'); DatabaseName = pathParts[1]; } else if (ReaderContainsColumn(reader, "DatabaseName") && !Convert.IsDBNull(reader["DatabaseName"])) { DatabaseName = reader["DatabaseName"].ToString(); } else { DatabaseName = null; } if (!Convert.IsDBNull(reader["ObjectPath"])) ObjectPath = reader["ObjectPath"].ToString(); if (!Convert.IsDBNull(reader["TextData"])) TextData = reader["TextData"].ToString(); }
public MyTraceEventArgs(TraceEventArgs args) { EventClass = args.EventClass; EventSubclass = args.EventSubclass; DatabaseName = args.DatabaseName; ObjectPath = args.ObjectPath; TextData = args.TextData; }