2016-05-25 27 views
0

ソリューションをあるマシンから別のマシンに移動し、悪夢を抱いています。私は1つの問題が残っている。デフォルトのページが表示されない場合、「リソースが見つかりません」と表示されます。私はrouteConfig.csにありますリソースが見つかりません(MVC)

routes.MapRoute("Default", url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }); 

私はリソースが見つかりません。

私がして、デフォルトのページにアクセスすることができます - 他の質問がそれに答えるようには見えません

http://example.com/home/index

EDIT:上記のコード行をルーティングコードの先頭に置くと、デフォルトのページは機能しますが、他のページは機能しません。コードを一番下に置くと、他のページは機能しますが、デフォルトページは機能しません。

+1

IIS構成にすることができます – DanielVorph

+0

問題は、devマシンと共有ホスティングサーバーの両方にあります。 devマシンを交換したのに、routeconfig.csが正確にコピーされたときに問題が発生しました。 – MiscellaneousUser

答えて

0

問題は、同じアドレスを指す2つの設定ルールがあることでした。他のルールの1つが間違ったコントローラを指していました。私はアクションを設定していたので、間違ったコントローラーがエラーになりました。コントローラーの名前をアクションとして使用しました。上記のルールは正しかったが、間違ったルールは

routes.MapRoute(
      name: "pagelist", 
      url: "pagelist", 
      defaults: new { controller = "pagelist", action = "pagelist", id = UrlParameter.Optional } 
      ); 

であったはずです。

0

「ウェブ」タブがあるプロパティで見て試してみてください、あなたの猫は、サーバーとプロジェクトURLを選択した、あなただけの開発マシンにRouteConfigファイルにデフォルトのルーティングおよび404を得続けるした場合、それはあなたの問題と思われ

+0

私が探したいものを広げることができますか? – MiscellaneousUser

0

を願っていますプロジェクトの仮想パス設定から来ます。

http://forums.asp.net/t/1893154.aspx?The+resource+cannot+be+found+404

アプリケーションは、ローカルホスト上で展開されている(またはローカルIIS Webサーバーの使用を設定している)、それはあなたが 「YourSite」という名前の仮想ディレクトリを作成したことを意味します。

VSでアプリプロジェクトを右クリックして[プロパティ]を選択し、[Web]に移動して、[プロジェクトURL]にサイトの仮想パスを設定します。

ライブIISサーバーで仮想ディレクトリの問題が発生した場合は、hereを参照して、アプリケーションを展開する前に、対象のコンピュータに仮想ディレクトリを追加してください。

また、カスタムルーティングルールがある場合は、カスタムルートがデフォルトルーティングルールの上に適切に配置されていることを確認してください。

関連する問題