Problem mit NVelocity, foreach und zwei Listen
-
10-07-2019 - |
Frage
gibt es einen einfachen Weg, um das folgende Problem zu lösen.
Lassen Sie uns sagen, dass ich mit ein paar Bücher in meinem Controller von meinem Modell eine IList holen. Jetzt möchte ich die Ausgabe bereichern und eine Vorschau von Amazon mit einem anderen Modell von einem äußeren Rahmen holen und eine andere IList erhalten.
Jetzt habe ich beiden ILists in eine Eigenschaft Tasche.
In NVelocity verwende ich eine #foreach für die Booklist, aber wie kann ich den amazonbooklist mit der rechten Vorschau zugreifen? Ich kann nicht mehr als $ amazonbook [index] verwenden, wobei der Index der isbn wäre. Muss ich wirklich beide Listen in eine große Liste mit einem einfachen onject, die nur die beiden anderen Objekte setzen müssen?
Denken Sie daran, beiden Modelle aus verschiedenen Frameworks sind und nicht in einem Rahmen platziert werden können. Beide Frameworks haben seperaten zu bleiben. Ich versuche, das NVelocity Problem zu lösen und natürlich, dieses Problem ist nur ein Beispiel, wir verkaufen keine Bücher;)
Lösung
Es kann eine einfachere Lösung sein, aber ich würde eine dritte Klasse wie solche
erstellenclass BookList{
MyBookObject a;
AmazonBookObject b;
}
eine Liste dieser dritten Klasse kann auf einmal zu Ihrer Ansicht übergeben werden.
Andere Tipps
Schau mal hier: http://www.castleproject.org/monorail/faq.html#NVelocity % 20View% 20Engine
Sie können ein Wörterbuch in NVelocity über
zugreifen$amazonbook.get_Item($index)