2

最初のページをロードするために、空白の.NET c#Razorプロジェクトに追加する必要のあるファイルを知りたいと思いました。

Index.cshtmlというビューを作成しましたが、その中には次のものが含まれています。

@{
    ViewBag.Title = "Index"; 
}

<h2>@ViewBag.Title</h2>

HomeController.csというコントローラーを作成しました。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace My_Website.Models
{
    public class HomeController : Controller
    {
        //
        // GET: /Default1/

        public ActionResult Index()
        {
            return View();
        }

    }
}

このアプリケーションを実行すると、次のエラーが発生します。

The view 'Index' or its master was not found or no view engine supports the searched locations. The following locations were searched:
~/Views/Home/Index.aspx
~/Views/Home/Index.ascx
~/Views/Shared/Index.aspx
~/Views/Shared/Index.ascx
~/Views/Home/Index.cshtml
~/Views/Home/Index.vbhtml
~/Views/Shared/Index.cshtml
~/Views/Shared/Index.vbhtml 

デフォルトのレイアウトを満たすためにホームディレクトリに配置することなく、Viewフォルダ内でIndex.cshtmlを直接指すようにスクリプトをリダイレクトする方法はありますか?

4

2 に答える 2

4

ビューはViewsフォルダーにある必要があり、次に対応するコントローラーのサブフォルダーまたはViewsの下にあるSharedというフォルダーのいずれかにある必要があります。次のいずれかを試してください。

Views -> Shared -> Index.cshtml 良い考えではありません

Views -> Home -> Index.cshtml

于 2013-01-23T13:59:53.577 に答える
1

アクションメソッドでビューファイルのパスを指定できます。

return View("~/Views/Index.cshtml");
于 2013-01-23T14:02:49.650 に答える