Frage

Hier ist eine Art und Weise, dass wir zur Zeit spucken einige HTML unserer Ansicht aus.

            foreach (var reportGroup in managedReportGroup.CustomerTags)
            { %>

                <%= reportGroup.Name %>

                <%
            }

Gibt es etwas, dass ich so tun kann? (Das wird für mich nicht)

        Action<ManagedReportGroups> handlesReportGroup = delegate(ManagedReportGroups managedReportGroup)
        {
            foreach (var reportGroup in managedReportGroup.CustomerTags)
            {
                Html.Encode(reportGroup.Name);                    
            }
        };  

Der Grund wäre auf den Aligator Klammern zu reduzieren und meinen Code aufzuräumen.

Danke,

Mike

War es hilfreich?

Lösung

Wenn Sie es zu Teilansichten bewegen, werden Sie noch die Schleife im Innern des Teils zu tun haben.

Sie können benutzerdefinierte HTML-Erweiterungsmethoden erstellen, wenn Sie wirklich tot-Set gegen Ihr erstes Beispiel.

Oder wenn Ihr Hauptziel ist wirklich „Alligator Klammern“ zu reduzieren Sie schneiden könnten auf zwei nach unten, wenn Sie es auf diese Weise tun:

<%
    foreach (var reportGroup in managedReportGroup.CustomerTags)
    {
        Response.Write(reportGroup.Name)
    }
%>

Sie könnten auch erwägen die Spark-Ansicht-Engine

Andere Tipps

Warum nicht PartialViews verwenden?

foreach (var reportGroup in managedReportGroup.CustomerTags)
            { %>

                <% Html.RenderPartial("NamePartialView", reportGroup.Name) %>

            }

Dann ist Ihre Teilansicht die Namen machen kann.

Das ist effektiver, wenn Sie in der reportGroup zum PartialView vorbei und lassen Sie die PartialView dann entweder schreiben alle HTML oder rufen Sie weitere PartialViews jedes Rendering auf einer atomaren Ebene.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top