DacpacExplorer.Pages.PropertiesPageBuilder.GetPropertiesDisplayForValidationMessages C# (CSharp) Method

GetPropertiesDisplayForValidationMessages() public method

public GetPropertiesDisplayForValidationMessages ( IList messages ) : UIElement
messages IList
return UIElement
        public UIElement GetPropertiesDisplayForValidationMessages(IList<DacModelMessage> messages)
        {
            var panel = GetPropertiesDisplayPanel("Validation Messages: ");

            if (!messages.Any())
            {
                panel.Children.Add(GetSimplePropertyLabel("Successful Validation: No Validation Messages :)"));
                return panel;
            }

            var textBox = new TextBox();
            textBox.HorizontalAlignment = HorizontalAlignment.Stretch;
            textBox.VerticalAlignment = VerticalAlignment.Stretch;
            textBox.HorizontalScrollBarVisibility = ScrollBarVisibility.Auto;
            textBox.VerticalScrollBarVisibility = ScrollBarVisibility.Auto;

            foreach (var message in messages)
            {
                textBox.Text += message.ToString() + "\r\n";
            }

            panel.Children.Add(textBox);

            return panel;
        }

Usage Example

Example #1
0
        public void Display()
        {
            TreeView.Items.Clear();

            var repository = ModelRepository.GetRepository();

            _model = repository.GetModel();

            var propertiesPageBuilder = new PropertiesPageBuilder();

            var dacpacNode = AddRootTreeItem("Dacpac Properties");

            dacpacNode.Tag = new CachedObjectDisplay
            {
                Properties = propertiesPageBuilder.GetPropertiesDisplayForDacpac(_model),
                Script     = ""
            };

            if (repository.ValidateModel())
            {
                var messages     = _model.Validate();
                var messagesNode = AddTreeItem("Validation Result", dacpacNode, _defaultForeground);
                messagesNode.Tag = new CachedObjectDisplay
                {
                    Properties = propertiesPageBuilder.GetPropertiesDisplayForValidationMessages(messages),
                    Script     = ""
                };
            }


            DisplayTopLevelNode("Tables", ModelSchema.Table);
            DisplayTopLevelNode("Views", ModelSchema.View);

            var programabililtyNode = AddRootTreeItem("Programmability");

            DisplayTopLevelNode(programabililtyNode, "Procedures", ModelSchema.Procedure);
            DisplayTopLevelNode(programabililtyNode, "Scalar Functions", ModelSchema.ScalarFunction);
            DisplayTopLevelNode(programabililtyNode, "Table-Valued Functions", ModelSchema.TableValuedFunction);
            DisplayTopLevelNode(programabililtyNode, "Database Triggers", ModelSchema.DatabaseDdlTrigger);
            DisplayTopLevelNode(programabililtyNode, "Server Triggers", ModelSchema.ServerDdlTrigger);
            DisplayTopLevelNode(programabililtyNode, "Assemblies", ModelSchema.Assembly);

            var securityNode = AddRootTreeItem("Security");

            DisplayTopLevelNode(securityNode, "Server Logins", ModelSchema.Login);
            DisplayTopLevelNode(securityNode, "Database Users", ModelSchema.User);
            DisplayTopLevelNode(securityNode, "Schemas", ModelSchema.Schema);
            DisplayTopLevelNode(securityNode, "Roles", ModelSchema.Role);

            Cursor = Cursors.Arrow;
        }
All Usage Examples Of DacpacExplorer.Pages.PropertiesPageBuilder::GetPropertiesDisplayForValidationMessages