Html - 自定义 ModelBinder 中的帮助程序
有没有办法在自定义模型绑定器中获取 Html-Helper 的实例?
例如:
public class TranslationModelBinder : DefaultModelBinder
{
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
// HtmlHelper helper = new HtmlHelper(?,?);
object model = base.BindModel(controllerContext, bindingContext);
}
}
我怎样才能得到两个需要的参数?
感谢您的任何提示! SL3DG3
Is there a way to get an instance of the Html-Helper within a custom Model-Binder?
E.g.:
public class TranslationModelBinder : DefaultModelBinder
{
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
// HtmlHelper helper = new HtmlHelper(?,?);
object model = base.BindModel(controllerContext, bindingContext);
}
}
How can I get the two needed arguments?
Thx for any tipps!
sl3dg3
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
即使你可以,那也是错误的。
HtmlHelper 是一个用于视图的工具,它在其中渲染模型,而绑定器则执行相反的操作。
Even if you could, it would be wrong.
HtmlHelper is a tool for the view where it renders the Model while the binder does the opposite.
模型绑定程序在视图执行之前运行,因此您还没有
ViewContext
来获取HtmlHelper
。您可能可以伪造此上下文,但这不是我建议您这样做的事情。不过,您可以有一个UrlHelper
。The model binder runs much before the view executes so that you don't have a
ViewContext
yet which allows you to obtain anHtmlHelper
. You could probably fake this context but that is not something I would recommend you doing. You could have anUrlHelper
though.