17

デフォルトの IIS サイトの web.config ファイルに次のコードがあります。

<httpModules>
    <add type="MDL.BexWebControls.Charts.ChartStreamHandler,Charts" name="ChartStreamHandler"/>
</httpModules>

次に、仮想ディレクトリをセットアップして参照すると、このエラーが発生します

ファイルまたはアセンブリ 'Charts' またはその依存関係の 1 つを読み込めませんでした。システムは、指定されたファイルを見つけることができません。

仮想ディレクトリは、デフォルトの web.config からモジュールを継承しています。

この継承をどのように停止しますか?

4

3 に答える 3

20

私は答えを見つけました。HttpModule セクションを location タグでラップし、inheritInChildApplications 属性を false に設定します。

<location path="." inheritInChildApplications="false">
  <system.web>
    <httpModules>
      <add type="MDL.BexWebControls.Charts.ChartStreamHandler,Charts" name="ChartStreamHandler"/>
    </httpModules>
  </system.web>
</location>

これで、仮想ディレクトリはこの場所セクションの設定を継承しなくなりました。

@GateKillerこれは別のWebサイトではなく、仮想ディレクトリであるため、継承が行われます。

@petrich を使用してヒットとミスの結果が得られました<remove />。すべての仮想ディレクトリに追加することを覚えておく必要がありますが、これは面倒です。

于 2008-09-01T11:19:03.607 に答える
2

仮想ディレクトリの web.config ファイルに次を追加します。

<httpModules>
    <remove name="ChartStreamHandler"/>
</httpModules>
于 2008-09-01T11:19:58.283 に答える
-2

Microsoft によると、他の Web サイトは既定の Web サイトから設定を継承しません。machine.config と同じフォルダにあるデフォルトの web.config を編集しているということですか?

于 2008-09-01T11:22:45.890 に答える