0

私は MVC 3 を学ぼうとしているので初心者です。とりあえず、jQuery と CSS を使用した HTML ページである基本的なサイトを作成したいと思います。私は MVC を使用していますが、実際にはアプリケーションに渡されるデータがないため、モデルは必要ありません。ただし、このサイトを公開しようとすると HTTP 403.14 Forbidden エラーが発生するため、これが問題を引き起こしています。アプリケーションの構造に問題があり、localhost:1081 Web サイトにアクセスしたときに適切に実行できないと思います。これが私が持っているすべてです:

HomeController.cs

public class HomeController : Controller
{
    //
    // GET: /Home/

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

}

}

これは、Index.cshtml のビューを返すだけです。

インデックス.cshtml:

@{ViewBag.Title = "My Web Site";} <h2>Web Site Title</h2>

私の HTML コードはすべて _Layout.cshtml に入れられました。jQuery と CSS が使用されます。デバッグ オプションを実行するとサイトは正常に動作しますが、公開しようとすると 403.14 禁止されます。インライン コマンド aspnet_regiis -i を実行しましたが、動作しているように見えましたが、プロジェクトを実行できませんでした。

Global.asax:

 public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

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

    }

_Layout のコードを Index に移動すると、機能しません。これを Index.cshtml にリンクする方法はありますか?

Web.config:

<system.webServer>
<defaultDocument enabled="true">
  <files>
    <add value="_Layout.cshtml" />
  </files>
</defaultDocument>
<validation validateIntegratedModeConfiguration="false"/>
<modules runAllManagedModulesForAllRequests="true"/>

ディレクトリのブラウジングはしたくないので、このオプションも試してみました。有効にすると、コンテンツを表示できますが、ページはレンダリングされません。

2 つの質問: 1.) サイトをレンダリングしようとしているだけで、アプリケーションにデータを渡していなくても、モデルが必要ですか? 2.) 私のサイトは適切に設定/構造化されていますか、それともここで何が間違っていますか?

ありがとう、ニック

4

1 に答える 1