internal bool Rename(string newName) { bool succussed = false; string newLocation = Path.Combine(FolderInfo.Parent.FullName, newName); if (newLocation != FolderInfo.FullName) { //after MoveTo, FolderInfo.FullName will has a "\" in the end, it will cause some issue, for example, //newLocation is "D:\data", after MoveTo, FolderInfo.FullName is "D:\data\" try { FolderInfo.MoveTo(newLocation); folderInfo = new DirectoryInfo(newLocation); isRenamed = true; succussed = true; } catch (Exception ex) { GisEditor.LoggerManager.Log(LoggerLevel.Debug, ex.Message, new ExceptionInfo(ex)); System.Windows.Forms.MessageBox.Show(ex.Message, GisEditor.LanguageManager.GetStringResource("DataRepositoryWarningLabel"), System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Warning); } } return(succussed); }