public static void AddHierarchyItem(ErrorTask task, EnvDTE.Project project) { IVsHierarchy hierarchyItem = null; IVsSolution solution = WebCompilerPackage.GetGlobalService(typeof(SVsSolution)) as IVsSolution; if (solution != null && project != null) { int flag = -1; try { flag = solution.GetProjectOfUniqueName(project.FullName, out hierarchyItem); } catch (COMException ex) { if ((uint)ex.ErrorCode != DISP_E_MEMBERNOTFOUND) { throw; } } if (0 == flag) { task.HierarchyItem = hierarchyItem; } } }
public bool SaveBindings(string configPath, string bindingsXml) { string bindingPath = configPath + ".bindings"; try { ProjectHelpers.CheckFileOutOfSourceControl(bindingPath); if (bindingsXml == "<binding />" && File.Exists(bindingPath)) { ProjectHelpers.DeleteFileFromProject(bindingPath); } else { File.WriteAllText(bindingPath, "///" + bindingsXml, Encoding.UTF8); ProjectHelpers.AddNestedFile(configPath, bindingPath); } IVsPersistDocData persistDocData; if (!WebCompilerPackage.IsDocumentDirty(configPath, out persistDocData) && persistDocData != null) { int cancelled; string newName; persistDocData.SaveDocData(VSSAVEFLAGS.VSSAVE_SilentSave, out newName, out cancelled); } else if (persistDocData == null) { new FileInfo(configPath).LastWriteTime = DateTime.Now; } return(true); } catch (Exception ex) { Logger.Log(ex); return(false); } }