HTML助手与HTML助手内

HTML助手与HTML助手内

问题描述:

我想绕着我的头;也许这里的某个人可以指引我走向正确的方向。HTML助手与HTML助手内

目前,一个有上有一些控制是这样一种形式:

@Html.ListBoxFor(s => s.SomeListSelection1, new MultiSelectList(Model.SomeList1, "Id", "Text")) 
<br /> 
@Html.ListBoxFor(s => s.SomeListSelection2, new MultiSelectList(Model.SomeList2, "Id", "Text")) 
<br /> 
@Html.ListBoxFor(s => s.SomeListSelection3, new MultiSelectList(Model.SomeList3, "Id", "Text")) 
<br /> 

这种形式出现在许多地方与一些轻微的变化上的控制是可用的。

“轻微的变化”使我不仅仅想将其作为局部视图来使用,因为我需要将控件复制到许多稍微变化的部分或将变体逻辑编码到视图中。

所以我想,“我知道,我会用很酷的HTML助手!”

但是,所有在线HTML帮手样本都是非常简单的html内容。所以问题是我如何在HTML帮助器中使用其他HTML帮助器?或者,如果这是一个错误的问题,是否有另一个更简洁的替代方案,只是用一堆条件渲染逻辑做成局部视图?

编辑: 虽然答案技术上没有回答我的问题,我有麻烦,利用该博客文章的什么,我要怎样做。我发现了一个更好的例子(对我来说): ASP.NET MVC 3 Custom HTML Helpers- Best Practices/Uses

是的,你可以。
助手可以包含任意Razor标记。

事实上,辅助方法的直接内容是代码块,而不是标记。
有关助手如何工作的更深入讨论,请参阅my blog