0

私はコントローラーを持っています

public class JobSearchResultController : Controller {

    public ActionResult Index() {

        return View();
    }
}

ビュー ~/Views/JobSearchResult/Index

@Html.Raw("<b> TEST VIEW </b>")

そして、ルートを登録します

    public IEnumerable<RouteDescriptor> GetRoutes()
    {
        return new[] {
            new RouteDescriptor {
                Priority = 5,
                Route = new Route(
                    "JobSearchResult",
                    new RouteValueDictionary {
                        {"area", "Module.Test"},
                        {"controller", "JobSearchResult"},
                        {"action", "Index"}
                    },
                    new RouteValueDictionary(),
                    new RouteValueDictionary {
                        {"area", "Module.Test"}
                    },
                    new MvcRouteHandler())
            }
        };
    }

そして、私はそれを他のビューの1つで呼び出しています

      @Html.ActionLink("Click Me", 
             "Index", 
             new { controller = "JobSearchResult", area = "Module.Test"" })

正常に動作し、プレーンページを表示する実際のビュー/インデックスに移動します

テストビュー

localhost/Orchard.Web/JobSearchResult URL 内

さて、私の問題は、このページが通常のコンテンツ タイプと同じように現在のテーマ/現在のレイアウト (マスターページ) を使用することを期待していることです。

これどうやってするの?

管理テーマを使用して管理ビューに表示できる [管理] 属性があることは知っていますが、クライアントに表示するにはどうすればよいでしょうか。のようなものはありますか

[Client] //display in Client
public class JobSearchResultController : Controller {

    public ActionResult Index() {

    return View();
     }
}

前もって感謝します!

4

1 に答える 1

2

はい。Orchard.Themes.ThemedAttribute を適用できます。

[Themed] //display in Client
public class JobSearchResultController : Controller {
    public ActionResult Index() {
        return View();
    }
}
于 2013-06-19T00:52:33.237 に答える