質問

iは新しいソリューションを作成し、優れたターゲティングフレームワーク4.0を構築しますが、実行すると、ブラウザに次のように表示されます。

リソースが見つかりません。 説明:HTTP404。探しているリソース(またはその依存関係の1つ)が削除されたか、名前が変更されたか、一時的に使用できなくなっている可能性があります。次のURLを確認して、スペルが正しいことを確認してください。 要求されたURL:/

これをデバッグする方法についてのアイデアはありますか?

役に立ちましたか?

解決

asp.net mvc 1.0プロジェクトテンプレートに付属しているdefault.aspxページを追加してみてください。 IIS 5(XP)を搭載したコンピューターでmvc 2をそのまま実行すると同様の問題が発生しましたが、それでうまくいきました。

Default.aspx:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="YourNamespace.Website.Default" %>

<%-- Please do not delete this file. It is used to ensure that ASP.NET MVC is activated by IIS when a user makes a "/" request to the server. --%>

Default.aspx.cs:

using System.Web;
using System.Web.Mvc;
using System.Web.UI;

namespace YourNamespace.Website
{
    public partial class Default : Page
    {
        public void Page_Load(object sender, System.EventArgs e)
        {
            // Change the current path so that the Routing handler can correctly interpret
            // the request, then restore the original path so that the OutputCache module
            // can correctly process the response (if caching is enabled).
            string originalPath = Request.Path;
            HttpContext.Current.RewritePath(Request.ApplicationPath, false);
            IHttpHandler httpHandler = new MvcHttpHandler();
            httpHandler.ProcessRequest(HttpContext.Current);
            HttpContext.Current.RewritePath(originalPath, false);
        }
    }
}

他のヒント

上記のdefault.aspxページを追加する必要はありません。

新しい Empty ASP.NET MVC 2アプリケーションを「そのまま」追加して実行すると、ブラウザにこの404メッセージが表示されます。

これは、global.asaxで定義されているデフォルトルートのためです。

routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
        );

HomeというコントローラーとIndexというアクションを探していることがわかります。

新しい empty プロジェクトを作成するときは、Homeコントローラーとインデックスアクションを作成する必要があります(空のプロジェクトには存在しません)、そしてビューを作成しますインデックスアクションにも。

私の推測では、IISでフレームワークを再登録または有効にする必要があります。 適切なフレームワークツリーからaspnet_regiisを実行するか、IIS Web拡張の下で適切なフレームワークバージョンが許可されていることを確認してください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top