Orchard CMS:如何将DriverResult显示重载为@model并支持绑定?

时间:2011-12-11 09:43:00

标签: content-management-system orchardcms

ARG!在过去的两天里,我在这里打了18个小时的脑袋,就像试着在一个4英尺的泥泞的泥浆池里奔跑一样......我太近了,担心我将不得不在周一带着非结果走路我所有的劳动......

大图:

我有一个需要考虑用户邮政编码的小部件,并在此基础上提供其所在区域内的事件列表。

如果GeoIp查找已关闭,或者用户有兴趣查找他们可以到达的其他位置并将ZipCode更改为他们选择的任何内容并且“回发”,则重新绘制模块。

我从另一个数据库中查找小部件,并将其渲染为小部件。

我完全按照自己的意愿工作......我“想”我想要的是

    protected override DriverResult Display(
        SeminarPart part, string displayType, dynamic shapeHelper) {

是我可以在.cshtml中绑定的东西

@model CustomPart

但无论我做什么,我都会得到 - >

  

传递到字典中的模型项是类型的   'IShapeProxyabb0e4251c0b4c71bfe70f2ec47bfca4',但这本字典   需要一个'Blah.Blah.MoreBlah.CustomPart'类型的模型项。

如果我能让这一切变得快乐,我“想”我会做类似

的事情
@Html.TextBoxFor(m=>m.SelectedZipCode)

最后,模型将刷新其结果集,更改模型中的List<CustomData>并重新绘制列表...... ???


DANGDED编辑器部分公开了GET和POST DriverResult编辑器,似乎做了我希望我能在这里做的事......任何人,想法?

PPPPPPLLLLLLEEEEEASSE罗杰......非常感谢提前,-James et 10-Geek dot com ...

1 个答案:

答案 0 :(得分:0)

@model CustomPart替换为@model dynamic。传递给视图的模型已由Orchard代理以允许它执行某些操作,代理对象为dynamic,而不是CustomPart的实例。

这仅适用于通过Display(...)方法显示的视图。在用于Editor(CustomPart part, dynamic shapeHelper)方法的视图中,您应该使用@model CustomPart