Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如何将参数传递到局部视图以显示db内容?_Asp.net Mvc - Fatal编程技术网

Asp.net mvc 如何将参数传递到局部视图以显示db内容?

Asp.net mvc 如何将参数传递到局部视图以显示db内容?,asp.net-mvc,Asp.net Mvc,我正在从数据库获取我的内容。如何使用部分视图在使用该数据库的页面上显示内容? 数据库表:内容 [Id,Content]这是两个字段 我想使用部分视图从db获取内容。 如何将id传递给局部视图并在视图页面中显示内容?在视图中,使用Html.RenderPartial函数。有几种不同的用途: 您可以将模型传递到局部视图: 或者您可以传入一个全新的ViewDataDictionary: 有关完整文档,请参阅 编辑:(回复评论): 我会将这些数据作为视图模型的一部分。例如,假设在您的模型中: List

我正在从数据库获取我的内容。如何使用部分视图在使用该数据库的页面上显示内容?
数据库表:内容
[Id,Content]这是两个字段

我想使用部分视图从db获取内容。

如何将id传递给局部视图并在视图页面中显示内容?

在视图中,使用
Html.RenderPartial
函数。有几种不同的用途:

您可以将模型传递到局部视图:

或者您可以传入一个全新的
ViewDataDictionary

有关完整文档,请参阅

编辑:(回复评论):

我会将这些数据作为视图模型的一部分。例如,假设在您的模型中:

 List<Person> People;
列出人员;
在视图中,您希望循环浏览其中的每一个,并使用PartialView显示详细信息:

 <% foreach( var p in Model.People){ %>
         <p> <% Html.RenderPartial("personPartial", p); %> </p>
 <%}%>

现在,您的PartialView可能看起来像:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Person>" %>
<%=Model.PersonName%>

您可以使用:

在您看来,包括部分:

<%= Html.RenderAction("foo", "mycontroller", new { id = 5 }) %>


备注:
RenderAction
是现在发布的ASP.NET MVC 2 RTM的一部分。对于ASP.NET MVC 1,您可以查看包含此扩展方法的程序集。

我将传递什么作为模型?假设我想显示不同段落的内容,比如[这里的数据来自id=5的db]

,[这里的数据来自id=7的db]

等等..我不想显示模型中的所有p。人们只想显示一些id,如5,8等。然后只将该项添加到模型中。我以这个清单为例。关键是将对象本身添加到模型中,而不仅仅是它的ID。
<%= Html.RenderAction("foo", "mycontroller", new { id = 5 }) %>