2017-06-07 20 views
0

コントローラ/ C#:ASP.NET MVC辞書<文字列、文字列>ビューの出力

public Action GetData() 
{ 
    ViewBag.InputData = new Dictionary<string, string> 
    { 
     ["Name"] = "Simon Lin", 
     ["Age"] = "18" 
    }; 
    return View(); 
} 

ビュー/ HTML:

@foreach (var keyValuePair in (ViewBag.InputData as Dictionary<string, string>)) 
{ 
    <input type="text" [email protected] value="" [email protected] /> 
} 

しかし、結果では、最初の入力のプレースホルダのみを表示「サイモン」ファイナルHTML:

<input type="text" name="Name" value="" placeholder="Simon" Lin=""> 
+1

にあなたはそれを引用する必要がある - 'プレースホルダー= "keyValuePair.Value @"'( 'name'の属性の同上) –

答えて

2

あなたはあなたのビュー内の変数の前後に引用符が欠落しています

<input type="text" name="@keyValuePair.Key" value="" placeholder="@keyValuePair.Value" /> 
         ^    ^     ^    ^
+0

ああ...おかげAロット、 – John

0

囲まれた名前とプレースホルダ引用符

@foreach (var keyValuePair in (ViewBag.InputData as Dictionary<string, string>)) 
{ 
    <input type="text" name="@keyValuePair.Key" value="" 
placeholder="@keyValuePair.Value"/> 
} 
関連する問題