在.config文件中启用自定义节的智能感知

在Visual Studio中编辑.NETconfiguration文件(app.config,web.config等)时,当select我的应用程序的设置时,我会得到Visual Studio的智能感知。 如果我添加自定义configuration部分,如何启用智能感知我的自定义设置? 我确信这个问题肯定有一个简单的答案,但粗略的谷歌search没有给我任何帮助。

谢谢!

如果您不想修改Visual Studio文件或将任何内容复制到Visual Studio文件夹中,则可以将.xsd文件添加到项目中,打开.config文件,然后在“ 属性”窗口中select“ 架构 ”(单击[…]图标):

Visual Studio的屏幕截图显示了在哪里查找和更改<code> .config </ code>文件的“Schema”属性

正如其他答案所说,您需要为您的自定义configuration部分提供一个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> 

您需要为您的自定义设置创build一个XSD文件,并将其复制到Visual Studio安装的架构目录中。 对于2005年,这是:%ProgramFiles%\ Microsoft Visual Studio 8 \ XML \ Schemas

这里有一些信息。 http://blogs.msdn.com/astebner/archive/2005/12/07/501466.aspx