public void EnumerateFiles(XmlNodeHandler xmlCallback) { lock (file) { file.Seek(0, SeekOrigin.Begin); XmlDocument doc = new XmlDocument(); doc.Load(file); foreach (XmlNode node in doc.FirstChild.ChildNodes) { xmlCallback(node); } } }
/// <summary> /// Read RecipeParameters.xml from directory of Framework /// </summary> /// <param name="dte"></param> /// <param name="_list"></param> /// <param name="internalXPath"></param> /// <param name="internalNamespace"></param> /// <param name="nodeHandler"></param> public void AddRecipeParameters(IServiceProvider provider, List<NameValueItem> _list, string internalXPath, string internalNamespace, XmlNodeHandler nodeHandler) { string configFileName = "RecipeParameters15.xml"; try { DTE dte = (DTE)provider.GetService(typeof(DTE)); string version = Helpers.GetSharePointVersion(dte); if (version != "") { configFileName = "RecipeParameters" + version + ".xml"; } } catch (Exception) { } IConfigurationService service = (IConfigurationService)provider.GetService(typeof(IConfigurationService)); string basepath = service.BasePath; string configfilename = Path.Combine(basepath, configFileName); if (File.Exists(configfilename)) { XmlDocument doc = new XmlDocument(); doc.Load(configfilename); XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable); nsmgr.AddNamespace("ns", internalNamespace); foreach (XmlNode node in doc.SelectNodes(internalXPath, nsmgr)) { foreach(NameValueItem nvitem in nodeHandler.GetNameValueItems(node, null, null)) { if (nvitem != null) { _list.Add(nvitem); } } } } }
public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { if (list != null) { return new StandardValuesCollection(list.ToArray()); } list = new List<NameValueItem>(); if (context != null) { _DTE service = (_DTE)context.GetService(typeof(_DTE)); Project project = Helpers.GetSelectedProject(service.DTE); XmlNodeHandler handler = new XmlNodeHandler("", "", "", ""); //find all items in project with .xml extension Helpers.NavigateProjectItems(project.ProjectItems, list, xPath, nameSpace, handler, ".xml"); } return new StandardValuesCollection(list.ToArray()); }
public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { if (list != null) { return(new StandardValuesCollection(list.ToArray())); } list = new List <NameValueItem>(); if (context != null) { _DTE service = (_DTE)context.GetService(typeof(_DTE)); Project project = Helpers.GetSelectedProject(service.DTE); XmlNodeHandler handler = new XmlNodeHandler("", "", "", ""); //find all items in project with .xml extension Helpers.NavigateProjectItems(project.ProjectItems, list, xPath, nameSpace, handler, ".xml"); } return(new StandardValuesCollection(list.ToArray())); }
/// <summary> /// Read RecipeParameters.xml from directory of Framework /// </summary> /// <param name="dte"></param> /// <param name="_list"></param> /// <param name="internalXPath"></param> /// <param name="internalNamespace"></param> /// <param name="nodeHandler"></param> public void AddRecipeParameters(IServiceProvider provider, List <NameValueItem> _list, string internalXPath, string internalNamespace, XmlNodeHandler nodeHandler) { string configFileName = "RecipeParameters15.xml"; try { DTE dte = (DTE)provider.GetService(typeof(DTE)); string version = Helpers.GetSharePointVersion(dte); if (version != "") { configFileName = "RecipeParameters" + version + ".xml"; } } catch (Exception) { } IConfigurationService service = (IConfigurationService)provider.GetService(typeof(IConfigurationService)); string basepath = service.BasePath; string configfilename = Path.Combine(basepath, configFileName); if (File.Exists(configfilename)) { XmlDocument doc = new XmlDocument(); doc.Load(configfilename); XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable); nsmgr.AddNamespace("ns", internalNamespace); foreach (XmlNode node in doc.SelectNodes(internalXPath, nsmgr)) { foreach (NameValueItem nvitem in nodeHandler.GetNameValueItems(node, null, null)) { if (nvitem != null) { _list.Add(nvitem); } } } } }