我正在尝试将Eval传递给ASP.NET Repeater中的Html.RenderPartial,但它无法正常工作吗?
<asp:Repeater runat="server">
<ItemTemplate>
<% Html.RenderPartial("UserControl1",Eval("Title")); %>
</ItemTemplate>
</asp:Repeater>
顺便说一下,我知道我可以通过其他方式来做,但我想知道它是否可行。
答案 0 :(得分:5)
<% protected string RenderControl(object dataItem) { Html.RenderPartial("UserControl1", ((MyType) dataItem).Title); return ""; } %>... <%# RenderControl(Container.DataItem) %> ...
我只会使用foreach - 混合WebForms数据绑定和MVC部分呈现是不可预测的,充其量:
<% foreach (MyObject o in data) { Html.RenderPartial("UserControl1", o.Title); } %>
不要让生活变得更加艰难......
答案 1 :(得分:0)
尝试将RenderPartial放在<%# %>
语句中,如:
<asp:Repeater runat="server">
<ItemTemplate>
<%# Html.RenderPartial("UserControl1",Eval("Title")); %>
</ItemTemplate>
</asp:Repeater>