2016-11-30 12 views
0

私はC#辞書<の文字列、辞書<文字列、オブジェクト>>を持っており、nVelocityテンプレートでデータを表示しようとしています。インデックス付きの辞書のキーを取得しようとしています。私は初心者です。NVELocityの辞書<string、Dictionary <string、object >>

インデックスのあるキーにアクセスする方法を教えてください。 0インデックスのキーにアクセスしたいのですが、反復でデータを表示するにはどうすればいいですか?foreachループに "break"ステートメントを挿入するにはどうすればいいですか?

<table width="100%" border="0" cellpadding="0" cellspacing="0"> 
    <tbody> 
     <tr class="HeaderOne"> 
      <td align="left">Class</td> 

      #foreach($services in $VolumeSummary) 
       #foreach($item in $VolumeSummary[$services]) 
        <td class="numeric-th">$item.AverageUnitPriceF</td> 
       #end 
       #break 
      #end 
      <td class="numeric-th">Average Price</td> 
      <td class="numeric-th">Total</td> 
     </tr> 

     #foreach ($item in $TotalsByServiceAndTermYear) 
     <tr style="color:#333;font-weight:normal;"> 
      <td>$item.Service</td> 
      <td class="numeric-td"> 
       $!item.Year 
      </td> 
      <td class="numeric-td"> 
       $!item.AverageUnitPriceF 
      </td> 
      <td class="numeric-td"> 
       $!item.TotalPriceF 
      </td> 
     </tr> 
     #end 
    </tbody> 
</table> 
+0

NVelocityには手がかりがありませんが、「辞書」は注文されていないため、最初のキーを取得するためにアクセスできる実際のインデックスはありません。 – HimBromBeere

+0

すべてのキーを取得してからC# –

+1

の最初のインデックス付きキーを取得できますが、これは確定的ではありません。特に、新しい.NETバージョンで変更される可能性があります。 – HimBromBeere

答えて

0

あなたは辞書からインデックスでアイテムを取得することはできませんが、あなたはそれがあるとして、インデクサーの構文は次のとおりであるキーでアイテムを取得するために$dict.get_Item("key")を使用できるようにNVelocityはちょうど.NETオブジェクトの上に座っていますアイテムインデクサーの基礎となるCLRメソッド

他の人が述べたように、Dictionaryには非決定的なソート順がありますので、SortedDictionaryを使用することを検討してください。

例のように#breakディレクティブを使用して#foreachから切断することができます。これはv1.1.1をリリースした後2011年に実装されたので、マスターからビルドするか、ビルドサーバーからマスタビルドを取得する必要があります。そうしないと、条件を使用してコンテンツを非表示にすることができます。

#foreach($item in $dict) 
    $item.Key 
    #break 
#end 

#foreach($item in $dict) 
    #if($velocityCount == 1) 
    $item.Key 
    #end 
#end 
+0

#ブレークは機能していません...そのまま表示されます...何らかの理由がありますか? –

+0

@MuhammadZaibあなたはバージョン番号についてのコメントを読まれましたか? –

+0

はいジョナトン..ありがとうございます。私は私のクエリを解決することができました... –

関連する問題