private void Button1Click(object sender, EventArgs e) { projectGrid.EndEdit(); var i = 0; foreach (DataGridViewRow row in projectGrid.Rows) { var assemblyInfo = row.Tag as ProjectAssemblyInfo; var newVersion = row.Cells[1].Value == null ? null : row.Cells[1].Value.ToString().Trim(); if (string.IsNullOrEmpty(newVersion) && i == 0) { return; } if (assemblyInfo != null) { if (assemblyInfo.Version != newVersion) { assemblyInfo.NewVersion = newVersion; string assemblyInfoFile; var assemblyText = ProjectUtil.GetAssemblyInfo(assemblyInfo.Project, out assemblyInfoFile); CheckOut(assemblyInfo, assemblyInfoFile); assemblyText = Regex.Replace(assemblyText, @"AssemblyFileVersion\("".+""\)", string.Format("AssemblyFileVersion(\"{0}\")", newVersion)); assemblyText = Regex.Replace(assemblyText, @"AssemblyVersion\("".+""\)", string.Format("AssemblyVersion(\"{0}\")", newVersion)); FileUtil.WriteText(assemblyInfoFile, assemblyText, Encoding.Default); //assemblyInfo.Project.Save(); } if (i == 0) { _newVersion = newVersion; } } i++; row.DefaultCellStyle.ForeColor = Color.Green; } ProductToRelease = new ProductInfo { CompanyName = _currentCompanyName, Name = _currentProductName, Version = _newVersion }; DialogResult = DialogResult.OK; }