2011-03-15 88 views
18

警告1元素 'system.webServer'具有无效子元素 元素'重写'。可能 元素的列表预期:“ASP,缓存,CGI, defaultDocument,directoryBrowse, globalModules,处理程序, httpCompression,httpErrors, httpLogging,httpProtocol, httpRedirect,httpTracing, isapiFilters,模块,odbcLogging, 安全,serverRuntime中, serverSideInclude,staticContent, tracing,urlCompression,validation, management'。 d:\ PROJEKTI \ FoodOrder \ FoodOrder \ Web.config文件185 4 FoodOrder元素> system.webServer'具有无效子元素'元素'重写'

代码:

system.webServer> 
     <validation validateIntegratedModeConfiguration="false" /> 
     <modules runAllManagedModulesForAllRequests="true"> 
      <remove name="ScriptModule" /> 
      <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
     </modules> 
     <handlers> 
      <remove name="WebServiceHandlerFactory-Integrated" /> 
      <remove name="ScriptHandlerFactory" /> 
      <remove name="ScriptHandlerFactoryAppServices" /> 
      <remove name="ScriptResource" /> 
      <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
      <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
      <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
     </handlers> 
     <rewrite> 
      <rewriteMaps> 
       <rewriteMap name="StaticRewrites"> 
        <!--<add key="/Default.aspx" value="/Default.aspx" />--> 
       </rewriteMap> 
      </rewriteMaps> 
      <rules> 

页的作品,但我总是得到这样的警告,当我发布页我得到错误发布的becouse的asp.net, url rewrite module and web.config

这...

回答

26

可能重复发生这种情况时,Visual Studio的智能感知没有找到关于模式文件重写模块的信息。因此,我们需要在文件中专门添加用于重写的模式:DotNetConfig.xsd

Ruslan提供非正式的重写模式。对于Visual Studio 2010,请从他的页面下载XML模式:http://ruslany.net/2010/04/visual-studio-xml-intellisense-for-url-rewrite-2-0/

对于早期版本从这里下载: http://ruslany.net/2009/08/visual-studio-xml-intellisense-for-url-rewrite-1-1/#comment-1402

两个版本,说明here

对于VS2010记得%VS100COMNTOOLS%

更换%VS90COMNTOOLS%对于VS2012和以后,跟着fftsys's article

如果你不想使用ruslany的脚本,你仍然可以使用重写模块。在这种情况下,您仍然可以修改web.config以添加visual studio中的重写部分。

IIS的原始重写模块来自Microsoft:http://www.iis.net/downloads/microsoft/url-rewrite并且受其支持。 ruslany的脚本只是在Visual Studio中启用支持,以便VS能够识别它。

+5

以下是关于VS2012的一些细节:http://stackoverflow.com/questions/13120726/url-rewrite-with-visual-studio-2012 – Mark 2013-05-17 06:59:43

+0

感谢您的补充。 – 2013-05-19 05:13:44

+0

通过阅读已经提供的免责声明,实现这一点非常困难。在任何情况下,这可能会导致失败呢? – 2013-10-07 11:15:16

相关问题