0

RazorEngine ( razorengine.codeplex.com ) を使用しています。

cshtml テンプレートから「アクション」を呼び出すにはどうすればよいですか? RazorEngine は MVC から切り離されており、これを WPF ソリューションから実行しているため、MVC の意味での実際のアクションではないため、「アクション」を引用します。基本的に私が必要とするのは次のようなものです: (以下はアイデアを説明するための厳密な疑似コードであることに注意してください)

<!DOCTYPE html>
<html>
    <head></head>
    <body>

        <!-- something similar to the following so that I can 
             include partial views where needed. -->
        @Html.Action("Method1")

        @Html.Action("Method2")

<!-- or -->

        @Html.Action("RazorTemplate1.cshtml")

        @Html.Action("RazorTemplate2.cshtml")

<!-- or -->

        @MyTemplateFunctionality.Method1()

        @MyTemplateFunctionality.Method2()
    </body>
</html>

メソッドが定義されている場所、例えば

public static class MyTemplateFunctionality
{
    public static string Method1(string templateName)
    {
        // execute functionality to render HTML output for Method1
        string htmlOutput = RazorEngine.Razor.Parse(templateName, new { ObjModelForMethod1 }); ;

        return htmlOutput;
    }

    public static string Method2(string templateName)
    {
        // execute functionality to render HTML output for Method2
        string htmlOutput = RazorEngine.Razor.Parse(templateName, new { ObjModelForMethod2 }); ;

        return htmlOutput;
    }
}

これは可能ですか?もしそうなら、私は何をする必要がありますか?

4

1 に答える 1