2

そのため、Web サイトを MVC 3 から MVC 4 サイトにアップグレードしました。Web ホストには MVC 4 がインストールされていませんが、dll をアップロードするだけで問題ないと言われました。インストール時に適用できると思われるこのリンクに誘導されました

http://weblogs.asp.net/scottgu/archive/2011/01/18/running-an-asp-net-mvc-3-app-on-a-web-server-that-doesn-t-have- asp-net-mvc-3-installed.aspx

次のリンクで指示されていることを実行しましたが、ViewExtensions でエラーが発生しました。これは明らかに (2 時間の調査の後) アップグレードに関連しています (例: http://s77.codeinspot.com/q/2109234 )。 )。とにかく、これはスローされているエラーです。

filterContext.Exception.Message :\hostingpath................ エラー CS0121: 次のメソッドまたはプロパティの間で呼び出しがあいまいです: ' Torneyo.Infrastructure.Helpers.ViewExtensions.AccountProfile(System. Web.Mvc.ViewMasterPage)」および「Tornyo.Infrastructure.Helpers.ViewExtensions.AccountProfile(System.Web.Mvc.ViewMasterPage)」

それは同じであり、私のviewextensionクラスから来ているだけなので意味がありません。以下は、私のマスターページで呼び出されている部分です。

//-----------for master pages
        static public User AccountProfile(this System.Web.Mvc.ViewMasterPage view)
        {
            return (Profile)view.ViewBag.AccountProfile;
        } 

したがって、これらはすべて、Webホストでのアップグレード前に完全に機能していました. アップグレードの前後で、ローカルで完全に動作します。他に何をする必要があるのか​​ よくわかりません。

4

2 に答える 2

2

web.config に正しいバインディング リダイレクトがあることを確認してください。アプリの一部が MVC3 を参照し、他の部分が MVC4 を参照している可能性があります。MVC3 から MVC4 へのバインディング リダイレクトは、すべてを MVC4 に「統合」します。

こちらの「アップグレード」ガイドをご覧ください: http://www.asp.net/whitepapers/mvc4-release-notes#_Toc303253806

于 2013-03-26T04:37:26.630 に答える
0

最後にそれを修正しました。そのため、DLL を消去して再インストールしようとしましたが、それでも機能しません。私がしなければならなかったのは、すべてを削除することでした(wwwrootフォルダー内のファイル)。そして、それを再び公開しました。その後、すべてがうまくいきました。

于 2013-03-27T16:00:39.023 に答える