Czy wyrażenia lambda/anonimowe metody są obsługiwane w widoku maszynki Razor?Czy wyrażenia lambda są obsługiwane przez maszynkę Razor?
Mam trudności wyrażania następujących w Razor:
@Model.ToList().ForEach(i =>
{
if (i.DealerName != null)
{
<text>
@i.DealerName
</text>
}
}
Uwaga: Wiem, że można rozwiązać ten problem z @foreach
ale muszę podobnego rozwiązania dla sterowania 3rd party MVC. Używa tego mechanizmu do ustawiania zawartości kontrolki. Działa dobrze dla widoków MASC .ASPX, ale nie może go uruchomić z obsługą Razor.
MVC .aspx odpowiednik (kod chciałbym przekonwertować do składni Razor):
<% Model.ToList().ForEach(i =>
{
if (i.DealerName != null)
{
%> <%=i.DealerName%> <%
};
});
%>
To jest dla silnika Razor że statki z ASP.NET MVC3.
Tak "Odpowiedź.Pisz "działa, ale dla bardziej złożonego przykładu połączenie strun bardzo szybko wymyka się spod kontroli. :( –
Tak, masz rację. Zaktualizowałem post, aby zezwolić na prawie każdy rodzaj kodu Razor w tej funkcji. Ciesz się :) –
Dzięki za twoje kłopoty wziąłeś Artiom. Szczególnie podoba mi się twoja sztuczka z wieloma liniami. Niestety nie mogę wpaść w taki blok kodu. Jak już wspomniałem w moim pytaniu, potrzebuję dostarczyć moją treść/szablon wewnątrz wyrażenia lambda dostawcy komponentów, aby zbudować kontrolę. Wydaje się to tak proste w kodzie .ASPX. Czy mam przyjąć, że wyrażenia lambda nie są obsługiwane w urządzeniu Razor na tym samym poziomie, co w przypadku kodu MVC .ASPX? –