Razor 声明性助手将模型作为参数传递
Posted
技术标签:
【中文标题】Razor 声明性助手将模型作为参数传递【英文标题】:Razor declarative helper passing model as parameter 【发布时间】:2016-03-07 03:03:12 【问题描述】:如何将模型作为参数传递给自定义 html 助手?
目前我有以下文件
@helper LabelFor(string label, string hint)
<label for="@label">@label</label>
<span class="mif-info"
data-role="hint"
data-hint-background="bg-blue"
data-hint-color="fg-white"
data-hint-mode="1"
data-hint-position="top"
data-hint="@hint"></span>
调用方式
@MyHelpers.LabelFor(Html.DisplayNameFor(model => model.Title).ToString(), "Description")
如何简化为
@MyHelpers.LabelFor(model => model.Title, "Description")
【问题讨论】:
不可能在@helper
中使用表达式(至少带有泛型类型参数)。请改用HtmlHelper
扩展方法。
【参考方案1】:
我猜,您可以使用 MVC DisplayTemplates 实现相同的效果。你试过那条路吗?
【讨论】:
我可以,但我正在看看是否有办法使用自定义剃须刀助手来做到这一点。以上是关于Razor 声明性助手将模型作为参数传递的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Meteor 模板助手编辑 Iron-Router 中作为参数传递的值?
将React函数式组件作为函数的参数传递时,我应该如何用TS声明函数参数类型
将 Razor Form 数据作为模型从带有 ajax 的引导模式传递回 C# 控制器方法
如何通过 Post 方法使用 JSON 模型将 JSON 字典作为参数传递?