我可以在MVC3中包含View in Model

时间:2012-05-21 03:51:19

标签: asp.net-mvc-3

我有一个模型,其中Area是Google地图覆盖(区域)详细信息,AreaData是用于在Google地图中呈现该区域的数据。

public class AreaDetailsViewModel
{
     public Area Area{get;set;}
     public AreaData Data{get;set;}
}

现在的问题是我正在尝试使用ajax调用来同时检索视图和数据。

但如果我将整个数据作为json返回,我将无法查看;如果我以html身份返回,我会将areadata包含在html中。

因为我需要本地化视图,所以我不能在没有本地化标签信息的情况下检索数据。

我可以将视图包含在模型中吗?

public class AreaDetailsViewModel
{
     public View AreaView{get;set;}
     public AreaData Data{get;set;}
}

但这看起来很奇怪,我真的需要你的建议。

1 个答案:

答案 0 :(得分:1)

MVC的工作方式是你有一个视图(可以是HTML,部分HTML,JSON,XML,......)和一个填充模型的控制器动作(视图需要显示的所有数据)并将此模型传递给视图。

因此,在您的示例中,您可以使用AJAX调用查询控制器操作,并将模型传递到部分视图,该视图将以所需格式显示此数据。