3

次のように、最も単純なデータ受け渡しを行いたいとします。

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

私がやりたいことは、変数 i をパラメーターとして UserControl に渡して、たとえば境界のある div 内に数値を表示することです。

これはどのように可能ですか?

ありがとう

4

2 に答える 2

6
<% 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 インスタンスです。

于 2010-03-24T12:55:08.867 に答える
-2
  • そうしない。このようなものは、おそらくモデルに含まれている必要があります。
  • MVC v2 にアップグレードしてください ;) 文字列を削除してください。
于 2010-03-24T12:54:52.037 に答える