سؤال

أحاول اجتياز التقييم إلى HTML.RenderPartial داخل مكرر ASP.NET لكنه لا يعمل يمكن لأي مساعدة واحدة؟

<asp:Repeater runat="server">
            <ItemTemplate>
                <% Html.RenderPartial("UserControl1",Eval("Title")); %>
            </ItemTemplate>
</asp:Repeater>

بالمناسبة، أنا أعلم أنه يمكنني القيام بذلك بطرق أخرى ولكن أريد أن أعرف ما إذا كان ذلك ممكنا أم لا.

هل كانت مفيدة؟

المحلول

هو نفسه كما هو الحال في أنه يتوقع تعبيرا بإرجاع سلسلة، لذلك للحصول على هذه التقييمات عليك أن تتصل بالطريقة التي تستدعي html.renderpartial ()، ثم إرجاع سلسلة فارغة:
<٪ protected string rendercontrol (كائن dataitem) {html.renderpartial ("usercontrol1"، ((mytype) dataitem) .title)؛ إرجاع ""؛ ٪>

... <٪ # rendercontrol (حاوية.Dataitem)٪> ...

أود فقط استخدام Foreach على الرغم من - خلط WebForms ربط البيانات والتقدير الجزئي MVC غير متوقع، في أحسن الأحوال:

<٪ foreach (myobject o in البيانات) {html.renderpartial ("usercontrol1"، o.title)؛ ٪>

لا تجعل الحياة أكثر صعوبة مما يجب أن تكون ...

نصائح أخرى

حاول وضع RenderPartial في الداخل <%# %> بيان مثل:

<asp:Repeater runat="server">
    <ItemTemplate>
        <%# Html.RenderPartial("UserControl1",Eval("Title")); %>
    </ItemTemplate>
</asp:Repeater>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top