When editing .NET config files (app.config, web.config, etc) in Visual Studio, I get Visual Studio's intellisense to guide me when choosing my application's settings. If I add a custom configuration section, how can I enable intellisense for my custom settings? I'm sure there must be an easy answer to this, but a cursory Google search didn't give me any help.
Thanks!
Open the App. config file and add the configSections, sectionGroup and section to it. We need to specify the name and fully qualified type of all the section and section group.
config file includes settings that apply to all of the ASP.NET applications that run a specific version of the . NET Framework. Because each ASP.NET application inherits default configuration settings from the root Web.
Settings. settings is located in the My Project folder for Visual Basic projects and in the Properties folder for Visual C# projects.
As the other answers say, you need to provide an XML Schema document for your custom configuration section. There's no need to add the .xsd
schema file to some global directory; you can reference it directly from your custom section in the App.config
file:
<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>
The xmlns
attribute is merely there to set a default namespace, so that you don't need to set it on your customSection
element and all of its child elements. (However, do not place the xmlns
attribute on the <configuration>
element!)
The customSection.xsd
contains the schema that will be used by IntelliSense, for example:
<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>
If you do not want to modify your Visual Studio files or copy anything into the Visual Studio folder, you can add the .xsd
file to your project, open your .config
file and select Schemas in the Properties window (click the […]
icon):
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With