private void SetupTriggers(ISourceInfo Source, Utilities.ORM.Manager.Schema.Default.Database.Table Table, IEnumerable<dynamic> Values) { Contract.Requires<ArgumentNullException>(Table != null, "Table"); Contract.Requires<ArgumentNullException>(Source != null, "Source"); Contract.Requires<NullReferenceException>(Provider != null, "Provider"); Values = Provider.Batch(Source) .AddCommand(null, null, @"SELECT sys.triggers.name as Name,sys.trigger_events.type as Type, OBJECT_DEFINITION(sys.triggers.object_id) as Definition FROM sys.triggers INNER JOIN sys.trigger_events ON sys.triggers.object_id=sys.trigger_events.object_id INNER JOIN sys.tables on sys.triggers.parent_id=sys.tables.object_id where sys.tables.name=@0", CommandType.Text, Table.Name) .Execute()[0]; foreach (dynamic Item in Values) { string Name = Item.Name; int Type = Item.Type; string Definition = Item.Definition; Table.AddTrigger(Name, Definition, Type.ToString(CultureInfo.InvariantCulture).To<string, TriggerType>()); } }