これはMVCでの私の最初の試みであるため、私が見逃しているのは単純なものでなければなりません。デフォルトルート以外は何も機能しないようです。
これが私のステップでした:
- MVC5 テンプレートから新しいソリューションを作成します (デフォルトで HomeController と Controller/Action/Id が RouterConfig.Configuration.
- 追加 --> Foo という名前のコントローラー --> Details という名前の ActionResult を作成します。
- 詳細という名前のビューを追加します
- MVC プロジェクトを実行する
- ホームページが表示され、URLをから変更します
ローカルホスト:50212
に
ローカルホスト:50212/Foo/詳細
結果: 404 が返されます
コンパイル時にMVCAreaRegistration
が自動的に発生しないということですか?
私はGlobal.asaxに行き、Application_Startに配置しようとしました
AreaRegistration.RegisterAllAreas();
しかし、それは無駄だったようです。何か案は?VS コミュニティ 2015 に何かが欠けているということですか? よろしく
コントローラー/FooController.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace MvcTest.Controllers
{
public class FooController : Controller
{
// GET: Foo
public ActionResult Details()
{
return View();
}
}
}
ビュー/Foo/Details.cshtml
@model MyModel
Hello
Global.asax の App_start
namespace MvcTest
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
AreaRegistration.RegisterAllAreas();
//This up here is something I added manually after its byDefault scaffolding
FilterConfig.Configure(GlobalFilters.Filters);
RouteConfig.Configure(RouteTable.Routes);
}
@Edit、FooController と Views/Foo/Details を追加
@@Edit: 欠落していた s を Detail sに追加しました。同じエラー。
@@@編集: Global.asax の共有