Asp.net mvc 我是否可以访问父视图';从子部分视图创建模型?

Asp.net mvc 我是否可以访问父视图';从子部分视图创建模型?,asp.net-mvc,razor,asp.net-mvc-5,Asp.net Mvc,Razor,Asp.net Mvc 5,我可以从子局部视图访问父视图的模型吗?当我查这个的时候,我得到了相互矛盾的信息 如果是的话,有人能给我举个例子吗 如果是这样,使子模型对象成为父模型的属性是否有帮助?否。如果您谈论的是将视图与ViewModels进行强绑定,则只能访问传递到局部视图的模型。但是,如果您希望在局部视图或任何其他视图中提供某些内容,则可以使用ViewData dictionary 另外一件事是,你可以做的,也应该做的,就是让你的视图模型符合你的父视图以及你的所有子视图。所以,要回答你的最后一个问题,你可以让子模型对象

我可以从子局部视图访问父视图的模型吗?当我查这个的时候,我得到了相互矛盾的信息

如果是的话,有人能给我举个例子吗


如果是这样,使子模型对象成为父模型的属性是否有帮助?

否。如果您谈论的是将视图与ViewModels进行强绑定,则只能访问传递到局部视图的模型。但是,如果您希望在局部视图或任何其他视图中提供某些内容,则可以使用ViewData dictionary

另外一件事是,你可以做的,也应该做的,就是让你的视图模型符合你的父视图以及你的所有子视图。所以,要回答你的最后一个问题,你可以让子模型对象成为你父模型的一个属性


这里的另一点是,确保您将域模型与要绑定到视图的视图模型分开,而不是为了将域模型绑定到视图而对域模型进行与UI相关的更改。

谢谢,我正要问的是,是否使用ViewData/ViewBag来实现这一点,因为他们肯定共享这一点。我遵循的是一种非常组合的设计——制作一个父视图模型,其属性是具有自己部分视图的其他独立模型。底层模型来自一个单独的独立数据层,并且是用于该目的所需的。。。尽量避免查看数据/包。通过模型进行操作将使代码更加结构化和可维护