2012-04-30 17 views
0

現在壊れているプロジェクトを選んで修正しようとしています。MVC 2/ASP.NET 4.0アプリケーションが動作しません

アプリケーションは、MVC 2.0で実装されているいくつかの機能を備えた.NET 3.5 Webフォームアプリケーションとして正しく機能していました。

アプリケーションが.NET 4.0にアップグレードされ、IIS 7で実行されているときにアプリケーションが壊れています.Webフォームの機能は正常に動作しますが、MVC 2.0の部分は機能しなくなりました。 MVC URLを参照すると404エラーが発生します。 URLを閲覧したときにMVCが起動しないようです。

私は以下のweb.configの抽出を入れました。

<compilation defaultLanguage="c#" debug="true"> 
    <assemblies> 
    <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> 
    <add assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>  
    </assemblies> 
</compilation> 

<system.webServer> 
    <modules> 
     <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    </modules> 
    <handlers> 
    </handlers> 
</system.webServer> 

開発用PC(Windows 7)で動作します。 IIS 7(Win 2k8)に展開するとMVCが動作しないのはなぜですか?

+1

MVCフレームワークは、ロードするコントローラとビューを知るためにルーティングに依存しています。 Global.asaxファイルと、到達しようとしているサンプルURLを投稿できますか? –

答えて

1

要素は、をthis answerに記載されているように設定する必要があります。

<system.webServer> 
    <modules runAllManagedModulesForAllRequests="true"> 
     <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    </modules> 
    <handlers> 
    </handlers> 
</system.webServer> 
関連する問題