在 ASP.NET MVC 和使用 Razor 中,我有一个视图(父视图)调用另一个视图(子视图)作为部分视图。两者都是强类型的,但它们具有不同的模型类型。
通常,在这些情况下,我们会显式地将模型从父视图传递到子视图。
@Html.Partial("Child", Model)
我们还可以选择不显式指定要传递的模型,在这种情况下,父视图将尝试将其自己的模型传递给子视图。如果类型匹配,则此方法有效,并且在大多数情况下是可取的。
@Html.Partial("Child")
然而,就我而言,我真的想要父视图not尝试将任何内容传递给子视图。我该怎么做呢?
我想过尝试通过null
明确地:
@Html.Partial("Child", null)
但这仍然将父级的 Model 传递给子 View,导致错误:The model item passed into the dictionary is of type 'A', but this dictionary requires a model item of type 'B'.
(顺便说一句,子视图是其模型的创建视图,这就是为什么我没有实例可以传递给它。)
尝试这个:
@Html.Partial("Child", null, new ViewDataDictionary<ChildType>(childInstance/*this can be null*/))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)