示例#1
0
        public override void UpdateConnection(IOrganizationService newService, ConnectionDetail detail, string actionName, object parameter)
        {
            AddConnection(detail);
            ConnectionDetail = detail;

            if (actionName == "ChangeConnection")
            {
                if (dockPanel.ActiveDocument is SqlQueryControl query)
                {
                    query.ChangeConnection(detail);
                    tscbConnection.Text = detail.ConnectionName;
                }

                if (!tscbConnection.Items.Contains(detail))
                {
                    tscbConnection.Items.Insert(tscbConnection.Items.Count - 1, detail);
                }
            }
            else if (actionName == "ConnectObjectExplorer")
            {
                _objectExplorer.AddConnection(detail);

                if (!tscbConnection.Items.Contains(detail))
                {
                    tscbConnection.Items.Insert(tscbConnection.Items.Count - 1, detail);
                }
            }
            else if (actionName == "ConnectObjectExplorerAndChangeConnection")
            {
                _objectExplorer.AddConnection(detail);

                if (!tscbConnection.Items.Contains(detail))
                {
                    tscbConnection.Items.Insert(tscbConnection.Items.Count - 1, detail);
                }

                if (dockPanel.ActiveDocument is SqlQueryControl query)
                {
                    query.ChangeConnection(detail);
                    tscbConnection.Text = detail.ConnectionName;
                }
            }
            else if (String.IsNullOrEmpty(actionName))
            {
                _objectExplorer.AddConnection(detail);

                if (!tscbConnection.Items.Contains(detail))
                {
                    tscbConnection.Items.Insert(tscbConnection.Items.Count - 1, detail);
                }

                CreateQuery(detail, "");
            }
            else
            {
                base.UpdateConnection(newService, detail, actionName, parameter);
            }
        }
示例#2
0
        private void AddConnection(ConnectionDetail con)
        {
            _metadata[con] = new AttributeMetadataCache(con.ServiceClient);
            _objectExplorer.AddConnection(con);

            // Start loading the entity list in the background
            EntityCache.TryGetEntities(con.ServiceClient, out _);

            _metadata[con].MetadataLoading += MetadataLoading;
            //_metadata[con].LoadAllAsync();
        }