8

MVC 3ベータ版では、テンプレートMVC 3部分ページ(Razor)レイアウト付きMVC 3ビューページ(Razor)に違いはありますか?

アプリケーションに部分的なページ(_partialList)を追加しました。ここで、部分ビューのみを返すと、_ViewStart.cshtmlに存在するレイアウトが適用されます。これは、レイアウトを備えたスターダードビューページのように機能します。

    if (Request.IsAjaxRequest())
        return View("_partialList", someModelData);

「部分的な」ページは、レイアウトのある標準のビューページとどのように区別されますか?特定のシナリオでは、2つの動作は異なりますか?

4

5 に答える 5

10

レイアウトを適用したくない場合は、次のPartialView代わりにを返しViewます。

if (Request.IsAjaxRequest())
    return PartialView("_partialList", someModelData);
于 2010-10-13T17:07:37.650 に答える
9

Darin の応答は、レイアウトを適用したくないという実際の問題を解決します。

この 2 つの違いについては、Razor では、フル ページとパーシャルの両方が同じ拡張子を使用し、同じ基本クラスを持っているため、実質的に同じです。

UI が異なる理由は、Web フォーム ビュー エンジンでは、2 つが異なる拡張機能と異なる基本クラスで実装されているためです。そのため、テンプレートを分離する必要があります。

于 2010-10-13T23:55:03.227 に答える
3

次のコードをページに追加すると、ビュー エンジンはレイアウトを適用しません。

@{
    Layout = null;
}
于 2011-02-28T20:51:58.083 に答える
2

ビューにはこの @{ View.Title = "Index"; があります。レイアウト = "~/Views/Shared/_Layout.cshtml"; }

部分的なビューはそうではありません

于 2010-12-02T09:07:43.150 に答える
0

違いはないと思います。

于 2010-10-13T17:07:01.683 に答える