如何在ASP.NET MVC中从视图传递数据到用户控件?

3

假设我想进行最简单的数据传递,如下所示:

<% For i = 0 To 10%>
    <%Html.RenderPartial("MyUserControl")%>
<% Next%>

我想做的是将变量i作为参数传递给用户控件,以便在边框div中显示数字。

这是否可能呢?

谢谢。

2个回答

6
<% For i = 0 To 10%> 
    <%Html.RenderPartial("MyUserControl", i)%> 
<% Next%>

RenderPartial方法有一个重载,允许您传递(子)模型。为了最有效地使用它,您的用户控件应该是强类型的 - 在这种情况下是类型为System.Int32的模型。


在用户控件中使用它:

<%@ Control Language="C#"
    Inherits="System.Web.Mvc.ViewUserControl<System.Int32>" %>
<div><%= this.Html.Encode(this.Model) %></div>

在这种情况下,this.Model 是一个 System.Int32 实例。

我该如何在UserControl上使用它? - Jey Geethan

-2
  • 你不需要这样做。这些东西应该在模型中。
  • 请升级到MVC v2 ;) 摆脱字符串。

至少你应该提供如何去除字符串的示例。 - John Farrell

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接