在Windows XP上我正在开发一个.NET 3.5 Web应用程序,它是WebForms和MVC2的组合(WebForms部分是遗留的,并且正在迁移到MVC)。当我使用ASP.NET Web服务器从VS2008运行它时,一切都按预期工作。
但是,当我在IIS中托管应用程序并尝试使用它时,我看到以下错误
Section or group name 'cachingConfiguration' is already defined. Updates to this may only occur at the configuration level where it is defined. Source Error: Line 24: </sectionGroup> Line 25: <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> Line 26: <section name="cachingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Caching.Configuration.CacheManagerSettings,Microsoft.Practices.EnterpriseLibrary.Caching, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> Line 27: </configSections> Line 28:
果然,如果我从web.config中删除了有问题的行(错误消息中的第26行),那么应用程序就可以正常运行。
但是,我真的需要找出重复定义的位置。在我的解决方案中无处可寻。还有什么地方呢?
其他一些信息:
这是我正在处理的唯一应用程序,所以不是在IIS中添加虚拟目录,而是简单地重新命名默认网站的本地路径以指向我的站点。
答案 0 :(得分:1)
您可以检查machine.config
文件,因为Web应用程序会继承该文件的所有设置。在asp.net 4.0中,为了降低web.config file
的复杂性,在那里移动了很多东西。它的路径是x:\$Windows$\Microsoft.NET\Framework\$version$\config\machine.config
,其中x:\$Windows$
是您的计算机上安装Windows的目录,$version$
是.Net框架版本。