aşağıdaki exeption alıyorum: "Bölümler sadece yapılandırma dosyasında başına bir kez görünür istisnalar için yardım konusuna bakın gerekir."Bölümler her yapılandırma dosyası için sadece bir kez görünmelidir! niye ya?
bu gibi benim yapılandırma dosyası görünüm:
<configSections>
<sectionGroup name="point.System">
<section name="singleInstanceCache"
type="xyz.Point.System.Configuration.SingleInstanceCache, Point.System" />
</sectionGroup>
<sectionGroup name="point.Services">
<sectionGroup name="xServices" type="xyz.Point.Messaging.PointServiceConfiguration.PointServices, Barcap.FIA.Point.Messaging">
<section name="xService"
type="xyz.Point.Messaging.PointServiceConfiguration.PointService, Barcap.FIA.Point.Messaging" />
</sectionGroup>
</sectionGroup>
</configSections>
<point.Services>
<xServices>
<xService name="Service1" type="IService" >
<endpoints>
<endpoint aliasName="incoming" endpointName="Subscriber"/>
<endpoint aliasName="outgoing" endpointName="Publisher"/>
</endpoints>
</xService>
<xService name="BlobService" type="IPortfolioService" >
<endpoints>
<endpoint aliasName="incoming" endpointName="Subscriber"/>
<endpoint aliasName="outgoing" endpointName="Publisher"/>
</endpoints>
</xService>
</xServices>
</point.Services>
burada ben o yük kodudur:
public class PointServices : ConfigurationSection
{
public static PointServices Get()
{
var t = (PointServices)ConfigurationManager.GetSection("point.Services/xServices");
return null;
}
//<summary>
//Declares a collection element represented in the following configuration sub-section
//<singleInstances> <add .../> </singleInstances>
//</summary>
[ConfigurationProperty("xServices", IsDefaultCollection = true)]
[ConfigurationCollection(typeof(PointServices), AddItemName = "xService")]
public PointServicesCollection Services
{
get { return (PointServicesCollection) base["xServices"]; }
}
}
public class PointService : ConfigurationElement
{
[ConfigurationProperty("name",IsRequired = true)]
public string Name
{
get { return this["name"].ToString(); }
}
[ConfigurationProperty("type", IsRequired = true)]
public string Type
{
get { return this["type"].ToString(); }
}
[ConfigurationProperty("endpoints", IsRequired = false)]
[ConfigurationCollection(typeof(EndpointAliasCollection), AddItemName = "endpoint")]
public EndpointAliasCollection Endpoints
{
get { return (EndpointAliasCollection)this["endpoints"]; }
}
}
Eğer ben bu er alıyorum neden bir fikrin varsa ror, bu yararlı olur.
Teşekkür
Parlak çözüm, tam olarak ne ben. Sadece PointServicesCollection sınıfının ConfigurationElementCollection öğesinden devralması gereken gerçeği eklerim. [Bu yazı] (http://stackoverflow.com/questions/7380627/unrecognized-element-exception-with-custom-c-sharp-config) de yardımcı oldu. – army