次のように、最も単純なデータ受け渡しを行いたいとします。
<% For i = 0 To 10%>
<%Html.RenderPartial("MyUserControl")%>
<% Next%>
私がやりたいことは、変数 i をパラメーターとして UserControl に渡して、たとえば境界のある div 内に数値を表示することです。
これはどのように可能ですか?
ありがとう
次のように、最も単純なデータ受け渡しを行いたいとします。
<% For i = 0 To 10%>
<%Html.RenderPartial("MyUserControl")%>
<% Next%>
私がやりたいことは、変数 i をパラメーターとして UserControl に渡して、たとえば境界のある div 内に数値を表示することです。
これはどのように可能ですか?
ありがとう
<% For i = 0 To 10%>
<%Html.RenderPartial("MyUserControl", i)%>
<% Next%>
RenderPartial メソッドには、(サブ) モデルを渡すことができるオーバーロードがあります。これを最も効果的に使用するには、UserControl を厳密に型指定する必要があります (この場合は System.Int32 型のモデル)。
UserControl で使用するには:
<%@ Control Language="C#"
Inherits="System.Web.Mvc.ViewUserControl<System.Int32>" %>
<div><%= this.Html.Encode(this.Model) %></div>
この場合this.Model
は、System.Int32 インスタンスです。