Как и в других ответах, вам необходимо предоставить документ XML-схемы для вашего пользовательского раздела конфигурации. Нет необходимости добавлять файл схемы .xsd
в какой-либо глобальный каталог; Вы можете ссылаться на него прямо из своего пользовательского раздела в файле App.config
:
<configuration>
<!-- make the custom section known to .NET's configuration manager -->
<configSections>
<section name="customSection" type="..." />
</configSections>
<!-- your custom section -->
<customSection xmlns="http://tempuri.org/customSection.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="customSection.xsd">
...
</customSection>
<configuration>
Атрибут xmlns
просто используется для установки пространства имен по умолчанию, поэтому вам не нужно устанавливать его для элемента customSection
и всех его дочерних элементов. (Однако не помещайте атрибут xmlns
в элемент <configuration>
!)
customSection.xsd
содержит схему, которая будет использоваться IntelliSense, например:
<xs:schema id="customSectionSchema"
targetNamespace="http://tempuri.org/customSection.xsd"
elementFormDefault="qualified"
xmlns="http://tempuri.org/customSection.xsd"
xmlns:mstns="http://tempuri.org/customSection.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="customSection">
...
</xs:element>
</xs:schema>