在 应用程序级别之外使用注册为allowDefinition='MachineToApoplication'的节是错误的.如果在IIS中没有将虚拟目录配置为应用程序,则可能导致此错误.
根据从网上看到的解决方法,已经解决的该问题。因为这个问题好像比较常见,就把它贴出来,大家可以了解一下。
解决方法如下:
选中 你要发布的虚拟目录 --〉右键单击--〉属性--〉应用程序名--〉创建 就ok了
若还不行把C:\WINDOWS\Microsoft.NET\work\v2.0.50727\CONFIG\machine.config中的所有allowDefinition="MachineToApplication"改为allowDefinition="Everywhere"解决的关键是:把你的虚拟目录指向web.config所在在文件夹,因为 web.config 的某些配置节只能出现在网站的虚拟目录跟目录中。.net 下用使用IIS建立虚拟目录是跟ASP下不同的,一定要指向文件夹的的跟目录.
PS:如果您是直接将项目文件夹直接拖到iis根目录C:\Inetpub\wwwroot下而没有创建应用程序名则可能出现此问题。问题原因我认为是iis没有将该项目文件夹当成一个网站来看待,而只是当成一个文件夹和文件夹下的若干文件组成。当创建应用程序名后iis将该项目文件夹就当成了网站来看待。
如果您是创建的虚拟目录则不存在以上问题