部分视图和viewmodel在单独的程序集中出现问题

时间:2012-11-21 17:01:43

标签: asp.net-mvc viewmodel asp.net-mvc-partialview html.renderpartial

我正在开发一个MVC解决方案,我希望为我正在创建的一些部分视图提供一个插件选项。我为每个插件都有单独的程序集,其中包含PartialView作为嵌入式资源以及它引用的viewmodel类。我使用虚拟文件提供程序来查找所需的PartialView,这很有效......直到我尝试将ViewModel用于部分。

为了渲染局部视图,我在Model中有两个属性,它们在运行时根据所选的选项设置...所以我使用以下内容:

    Html.RenderPartial(Model.PartialViewName, Model.PartialViewModel) 

其中Model.PartialViewModel是单独程序集中所有视图模型实现的接口。

部分视图渲染时出现以下错误:错误CS1061'object'不包含'{PropertyName}'的定义,并且没有扩展方法'{PropertyName}'接受'object'类型的第一个参数可能找到...“我想要访问的部分视图模型上的任何属性都会出现此错误。

但是,在调试模式下,我可以看到已传递给局部视图的视图模型,它是正确的,所有属性都在那里并填充。我甚至已经删除了插件,只是引用了命名的类和类型(而不是接口),我仍然得到这个错误。

有什么想法吗?任何人都能够将局部视图及其视图模型放在一个单独的程序集中并使其工作?谢谢。

0 个答案:

没有答案