2010-02-24 11 views
7

StringTemplate şablon altyapısını kullanarak iç içe geçmiş bir döngüye benzer bir şey yazmakla ilgileniyorum. C# 'da her Anahtar'ın Belge Nesneleri Listesini içeren bir HashTable'ı vardır, her bir Belge bir başlığa ve kaynağa sahiptir. Bir e-postanın başlangıcında, kaynak başına doküman başlıklarının bir özetini listelemek istiyorum.StringTemplate içinde iç içe geçmiş döngü

<h1>Summary</h1> 
<h2>Source A</h2> 
<ul> 
    <li>title 1</li> 
    <li>title 2</li> 
</ul> 
<h2>Source B</h2> 
<ul> 
    <li>title 3</li> 
    <li>title 4</li> 
</ul> 

Bunu StringTemplate ile gerçekleştirmenin en iyi yolu nedir?

cevap

11

uygun veri yapılarına bu dönüştürülmüş ettik varsayarak - Source sınıf getName ve getDocuments yöntemleri sahip ve Document sınıf getTitle yöntemi olan, bu gibi görünecektir: güzel bir post var

$ 
sources: 
{ 
    source| 
    <h2>Source $source.name$ </h2> 
    $ 
    source.documents: 
    { 
     document| 
     <li>title $document.title$</li> 
    } 
    $ 
} 
$ 
+0

ama w değil HashTable için ork. –

+1

Bana hash ve belge nesnelerinizin nasıl göründüğünü gösterebilir misiniz? Hashtable ile 'ht.keys: {k | something}' sözdizimini kullanabilirsiniz. – viaclectic