示例#1
0
        private bool SaveScript()
        {
            if (ConfigHelper.Current == null || ConfigHelper.Current.PragmaSqlDbConn == null)
            {
                MessageBox.Show("PragmaSQL Systtem connection not specified!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }

            SharedScriptsService facade = new SharedScriptsService();

            facade.ConnParams = ConfigHelper.Current.PragmaSqlDbConn;

            SharedScriptsItemData data = ucSharedScripts1.SelectedNodeData;
            int?parentID = null;

            if (data.Type == GenericItemType.Folder)
            {
                parentID    = data.ID;
                data        = SharedScriptsItemDataFactory.Create(txtItemName.Text, GenericItemType.Item, null, parentID, String.Empty);
                data.Script = Script;
                facade.AddItem(data);
                _savedItemData = data;
                return(true);
            }
            else if (data.Type == GenericItemType.Item)
            {
                if (data.Name.ToLowerInvariant() == txtItemName.Text.ToLowerInvariant())
                {
                    DialogResult dlgRes = MessageBox.Show("Item with name \"" + data.Name + "\" already exists!\n"
                                                          + "Do you want to overwrite this item?", "Warning"
                                                          , MessageBoxButtons.YesNo
                                                          , MessageBoxIcon.Warning
                                                          , MessageBoxDefaultButton.Button2
                                                          );

                    if (dlgRes == DialogResult.No)
                    {
                        return(false);
                    }
                    data.Script = Script;
                    facade.UpdateItem(data);
                    _savedItemData = data;
                    return(true);
                }
                else
                {
                    parentID    = data.ParentID;
                    data        = SharedScriptsItemDataFactory.Create(txtItemName.Text, GenericItemType.Item, null, parentID, String.Empty);
                    data.Script = Script;
                    facade.AddItem(data);
                    _savedItemData = data;
                    return(true);
                }
            }
            else
            {
                throw new Exception("Item type not supported!");
            }
        }