Here is my example of config that I need to include into my \App_Config\Include folder:
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/"> <sitecore> <MyCustomSection> <MyCustomElement Name="XXX" MyProperty="YYY" /> <MyCustomElement Name="AAA" MyProperty="BBB" /> </MyCustomSection> </sitecore> </configuration>
And here is a way to read it:
using System.Collections.Generic;
using Sitecore.Configuration;
using System.Xml;
using Sitecore.Xml;
/// <summary>
/// TODO: Update summary.
/// </summary>
public class MyConfigElement
{
//The two properties corresponding to the properties into the config
public string Name { get; set; }
public string MyProperty { get; set; }
//The method who return the list of my custom elements
public static List<MyConfigElement> GetListMyCustomElements()
{
List<MyConfigElement> lst = new List<MyConfigElement>();
//Read the configuration nodes
foreach (XmlNode node in Factory.GetConfigNodes("MyCustomSection/MyCustomElement"))
{
//Create a element of this type
MyConfigElement elem = new MyConfigElement();
elem.Name = XmlUtil.GetAttribute("Name", node);
elem.MyProperty = XmlUtil.GetAttribute("MyProperty", node);
lst.Add(elem);
}
return lst;
}
}
Don’t forget to use a property “Name” to avoid the conflicts in the include folder (see this post: http://sitecoreblog.blogspot.com/2012/02/config-patching-system-for-external.html)
No comments:
Post a Comment