private void BuildChildNodesThreaded(object state)
        {
            ColumnNode      node     = state as ColumnNode;
            ITreeBuilder    builder  = Context.GetTreeBuilder(state);
            ISchemaProvider provider = node.Column.SchemaProvider;

            if (provider.IsSchemaActionSupported(SchemaType.Constraint, SchemaActions.Schema))
            {
                DispatchService.GuiDispatch(delegate {
                    builder.AddChild(new ConstraintsNode(node.ConnectionContext, node.Column));
                    builder.Expanded = true;
                });
            }
        }
        private void BuildChildNodesThreaded(object state)
        {
            ColumnNode   node    = state as ColumnNode;
            ITreeBuilder builder = Context.GetTreeBuilder(state);
            IDbFactory   fac     = node.ConnectionContext.DbFactory;

            if (fac.IsCapabilitySupported("TableColumn", SchemaActions.Schema, ColumnCapabilities.PrimaryKeyConstraint) ||
                fac.IsCapabilitySupported("TableColumn", SchemaActions.Schema, ColumnCapabilities.ForeignKeyConstraint) ||
                fac.IsCapabilitySupported("TableColumn", SchemaActions.Schema, ColumnCapabilities.CheckConstraint) ||
                fac.IsCapabilitySupported("TableColumn", SchemaActions.Schema, ColumnCapabilities.UniqueConstraint)
                )
            {
                DispatchService.GuiDispatch(delegate {
                    builder.AddChild(new ConstraintsNode(node.ConnectionContext, node.Column));
                    builder.Expanded = true;
                });
            }
        }