相关疑难解决方法(0)

使用ASP.NET MVC中的Razor创建可重用的HTML视图组件

我有一个Razor辅助函数,它创建了一个可重复使用的HTML面板,可以让我一遍又一遍地编写相同的HTML.

@helper DefaultPanel(string panelTitle) {
    <div class="panel">
        <div class="panel-logo"><img src="/logo.png"></div>
            <div class=panel-inner">
                <p class="panel-title">@panelTitle</p>
                <div class="panel-content">
                    /* Can I pass content to be rendered in here here? */
                </div>
            </div>
        </div>
    </div>
}
Run Code Online (Sandbox Code Playgroud)

我想知道,是否有可能重新使用这个助手来填充.panel-content更多的HTML以允许进一步的灵活性和代码重用 - 类似于下面的内容:

@LayoutHelpers.DefaultPanel("Welcome back") {
    <div class="panel-content-inner">
        <p>Welcome back, please select from the following options</p>
        <a href="#">Profile</a>
        <a href="#">My Defails</a>
    </div>
}
Run Code Online (Sandbox Code Playgroud)

虽然使用.NET MVC我注意到Html.BeginForm()@using声明中的语句中包装代码时会发生类似的事情Html.BeginForm,如下所示:

@using (Html.BeginForm("Index", "Login", FormMethod.Post))
{
    <div>This content gets rendered within the <form></form> markup.</div> …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc razor

33
推荐指数
1
解决办法
2万
查看次数

标签 统计

asp.net ×1

asp.net-mvc ×1

razor ×1