2012-03-30 7 views
0

私はビューで次のforeachを持っています。ビューモデルのプロパティを繰り返し処理し、文字列であるすべてのプロパティのテキストボックスを表示したいと思います。ビューモデルプロパティが文字列かどうかを確認します

foreach (var property in ViewData.ModelMetadata.Properties) 
     { 
      if(property.GetType() == "string") 
      { 
       <div class="watermark"> 
        <label>Friend's email address</label> 
        <br> 
        @Html.Editor(property.PropertyName) 
       </div> 
      } 
     } 

理想的property.GetType()==「string」は、真または偽を返すだろうが、.GetTypeはいつものSystem.Typeを(私は信じて)戻っているので、これはそうではありません。あなたがプロパティをループしている理由

+0

を試してみてください?なぜ 'Html.EditorFor(model => model.SomeProperty)'を使わないのですか? – RPM1984

+0

私はこのビューモデルで10の電子メールのプロパティを持っています。それは10回ペーストをコピーするのは愚かなようでしたので、エディタ用の文字列をループします。 –

+0

見つかった、 if(property.ModelType.Name == "String") –

答えて

1

この

if(property.GetType() == typeof(string)) 
関連する問題