C# 为什么注册模块会禁用重写?

C# 为什么注册模块会禁用重写?,c#,asp.net,C#,Asp.net,从web.config文件中删除我的MyModule模块后,rewrite按预期工作将MyModule模块添加回web.config文件时,MyModule模块按预期工作,但没有进行重写。 web.config: <system.webServer> <rewrite> <rules> <rule name="rule_name" patternSyntax="ECMAScript" stopProcessing=

从web.config文件中删除我的
MyModule
模块后,
rewrite
按预期工作
MyModule
模块添加回web.config文件时,
MyModule
模块按预期工作,但没有进行
重写。

web.config:

  <system.webServer>
    <rewrite>
      <rules>
        <rule name="rule_name" patternSyntax="ECMAScript" stopProcessing="true">
          <match url="(.*)" />
          <action type="Rewrite" url="http://localhost:7789/example/api/values" />
        </rule>
      </rules>
    </rewrite>
    <modules>
      <remove name="MyModule" />
      <add name="MyModule" type="My.Models.MyModule, Project1" />
    </modules>
    ...

在web.config内部-模块的
名称
必须等于
类型
(直到
类型
中的
):

更改为:

<modules>
  <remove name="MyModule" />
  <add name="MyModule" type="My.Models.MyModule, Project1" />
</modules>

改为:

<modules>
  <remove name="My.Models.MyModule" />
  <add name="MyModule" type="My.Models.MyModule, Project1" />
</modules>


从头开始,第一个响应请求的模块将是最后一个。因此,如果您的模块响应了请求,则重写模块将不会被调用。您的模块到底在做什么?或者可以使用您提供的空模块进行复制?@CodeCaster如何使
rewritemodule
MyModule
一起工作?@Evk
MyModule
将在向其他人重写请求之前进行授权。如果您从模块中删除所有代码,是否会发生重写?而且,我认为模块将按照注册的顺序运行,所以您的模块应该在重写之后而不是之前运行(但我不确定)。
<modules>
  <remove name="My.Models.MyModule" />
  <add name="MyModule" type="My.Models.MyModule, Project1" />
</modules>