0
Ich habe die folgenden foreach in einer Ansicht, ich möchte es über Eigenschaften in meinem Ansichtsmodell durchlaufen und ein Textfeld für jede Eigenschaft anzeigen, die eine Zeichenfolge ist.Überprüfen Sie, ob eine Ansicht Modelleigenschaft eine Zeichenfolge ist
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>
}
}
Idealer property.GetType() == „string“ würde wahr oder falsch zurückgeben, aber dies ist nicht der Fall, weil .GetType immer zurückkehrt System.Type (glaube ich).
Versuchen Sie, warum sind Sie die Eigenschaften Schleifen? warum nicht 'Html.EditorFor (model => model.SomeProperty)'. – RPM1984
Ich habe 10 E-Mail-Eigenschaften in diesem Ansichtsmodell, es schien albern, Paste, dass 10 mal zu kopieren, damit ich die Strings für die Redakteure durchlaufen würde. –
Gefunden, musste sein if (property.ModelType.Name == "String") –