Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在剃须刀助手中使用@section_C#_Asp.net Mvc 4_Razor_Html Helper - Fatal编程技术网

C# 在剃须刀助手中使用@section

C# 在剃须刀助手中使用@section,c#,asp.net-mvc-4,razor,html-helper,C#,Asp.net Mvc 4,Razor,Html Helper,我们正试图设置我们的布局部分是必要的,但可配置的基础上,个别页面。现在我们用一个部分来做这件事 @section FloatingNav { <h1>@Model.Name <span class="release-year">@Model.AverageRating</span></h1> <ul class="sub-nav"> <li class="active"><a href=

我们正试图设置我们的布局部分是必要的,但可配置的基础上,个别页面。现在我们用一个部分来做这件事

@section FloatingNav {
    <h1>@Model.Name <span class="release-year">@Model.AverageRating</span></h1>
    <ul class="sub-nav">
        <li class="active"><a href="#episodes">Episodes</a></li>
        <li><a href="#episodes">Cast</a></li>
        <li>Reviews</li>
        <li>Related</li>
    </ul>
}


但问题是,Razor助手似乎不理解小节语法。有没有办法在剃须刀助手中包含部分?

我认为这是不可能的

@helper
@section
语法是编译页面的特殊指令

HelperResult
(助手)不知道如何定义节

该方法属于
网页库

你可能不得不从另一个方向来看待这个问题。使用局部视图而不是辅助对象可能会解决此问题

@using System.Web.Mvc.Html
@helper FloatingNav(string name, int rating) {
    @section FloatingNav {
        <h1>
            name <span class="release-year">rating</span></h1>
        <ul class="sub-nav">
            <li class="active"><a href="#episodes">Episodes</a></li>
            <li><a href="#episodes">Cast</a></li>
            <li>Reviews</li>
            <li>Related</li>
        </ul>
    }
}
@helper FloatingNav(System.Web.Mvc.HtmlHelper html, string viewName) {
    @section FloatingNav {
        @html.Partial(viewName)
    }
}
@helper FloatingNav(System.Web.Mvc.HtmlHelper html, string viewName, object model) {
    @section FloatingNav {
        @html.Partial(viewName, model)
    }
}
@Layout.FloatingNav(@Model.Name, @Model.AverageRating)
@Layout.FloatingNav("_SimpleNav", @Model)