2011-01-06 10 views
0

私のaspxページのこの特定のコードは、私をナットにしています。私は、「セメスター」が辞書の「レコード」の有効なキーではないと言って、3行目の「指定されたキーは辞書にはありません」という例外を受け取ります。問題は、私が使用しているキーがちょうど辞書から直接来たことです!私は見落としている何かが明白でなければならない。ありがとう。キーで辞書の値を見つける

<% foreach (var semester in records.Keys) {%> 
     <h3><a href="#"><%= semester.ToString() %></a></h3> 
     <% foreach (var course in records[semester]) { %> 
      <div> 
      </div> 
     <% } %> 
    <% } %> 
+0

あなたはXSSホールを持っています。 – SLaks

+0

'semester'はどのタイプですか? – SLaks

答えて

1

なぜ起こるのかわかりません。

代わりに、キーと値のペアをループすることができます

<% foreach (var pair in records) {%> 
    <h3><a href="#"><%= pair.Key %></a></h3> 
    <% foreach (var course in pair.Value) { %> 
     <div> 
     </div> 
    <% } %> 
<% } %> 
+0

それはトリックでした! (私はそれが私を分にさせるとき答えとしてそれをマークします)。私には意味がありません。私はまだ仕事を渡している参照はしないでください?直前のウィンドウでは、records.Contains(semester.Key)を試してみたところ、同じ例外が発生しました。 – kd7iwp

+0

'Contains'を呼び出すと例外がスローされましたか?それは起こり得ない。 – SLaks

関連する問題