我不确定这是否可能。
我有一堆@Helper
位于视图内以及其他视图中:
@helper ViewHelper1()
{
...
}
@helper ViewHelper2()
{
...
}
etc.
我有在视图和其他视图中使用的重复代码:
@if (!(Model.Entity == Model.Enum.One))
{
<td>
@ViewHelper1()
</td>
}
else
{
<td>
@ViewHelper1()
</td>
<td>
@ViewHelper1()
</td>
}
实际上@ViewHelper1
有更复杂的代码,但这并不重要(我认为)。
好吧,因为每个视图都有多个@Helper
的(30+ 次观看,10-15@Helper
的每个)和<table>
结构是相同的,我想知道如何去创建一个@Helper
in App_Code
封装了<td>
结构,然后传递视图的@Helper
.
Say:
@helper Table(...)
{
...
}
或者无论这是否可能,然后在视图中调用它,如下所示:
@Table(HelperView1)
如果是的话,我只需要语法方面的帮助。
一如既往,非常感谢。
生成的剃刀助手只是具有返回类型的函数HelperResult
。
您可以让代表返回HelperResult
作为主要助手中的参数并在适当的位置调用它们。
一个帮助您入门的小示例:
@helper View1()
{
<h1>View1</h1>
}
@helper View2()
{
<h2>View2</h2>
}
@helper Table(Func<HelperResult> viewHelper)
{
<text>Reuslt of viewHelper</text>
@viewHelper()
}
@Table(View1)
@Table(View2)
生成的输出:
Reuslt of viewHelper
<h1>View1</h1>
Reuslt of viewHelper
<h2>View2</h2>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)