在父视图中访问部分视图模型

时间:2015-05-27 07:51:13

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

我试图在其父视图(主页)中访问部分视图的视图模型,但是无法这样做!

我的场景:我有一个部分视图,它拥有自己的控制器和视图模型。在部分视图模型中,DB中有3个列表:国家,城市和类别。

我想在部分视图和它的父级上显示不同模式的类别。

注意:由于部分视图也在其他页面(视​​图)上使用,我不能将类别放在Home视图模型中而不是部分视图模型中!将类别列表放在两个视图模型中都会导致对同一数据进行双DB调用!

任何人都可以在这方面提供帮助。感谢

1 个答案:

答案 0 :(得分:0)

您无法在父视图中访问部分视图的模型。但您可以使用HttpContext.Items

在它们之间共享数据
@{
    this.ViewContext.HttpContext.Items["Stuff"] = "some-data";
}

此数据对单个HTTP请求有效。

更多信息:

https://msdn.microsoft.com/en-us/library/system.web.httpcontext.items(v=vs.110).aspx

When can we use HttpContext.Current.Items to stores data in ASP.NET?

修改链接已更正。