以下代码失败,因为propiedadesFormularioDetalle为null。 我在块代码之前放置了一个IF,但仍然无法正常工作,如果我删除其中一个bracked,那么它就不会编译
@if (propiedadesFormularioDetalle != null) { }
<div class="panel panel-default">
<div class="panel-heading">Propiedades adicionales</div>
<div class="panel-body">
<dl class="dl-horizontal">
@foreach (KeyValuePair<string, string> propiedad in propiedadesFormularioDetalle)
{
<dt>
@Html.DisplayName(propiedad.Key)
</dt>
<dd>
@Html.DisplayFor(prop => propiedad.Value)
</dd>
}
</dl>
</div>
}
</div>
答案 0 :(得分:1)
试试这个:
@{
if (propiedadesFormularioDetalle != null) {
<div class="panel panel-default">
<div class="panel-heading">Propiedades adicionales</div>
<div class="panel-body">
<dl class="dl-horizontal">
foreach (KeyValuePair<string, string> propiedad in propiedadesFormularioDetalle)
{
<dt>
Html.DisplayName(propiedad.Key)
</dt>
<dd>
Html.DisplayFor(prop => propiedad.Value)
</dd>
}
</dl>
</div>
}
</div>
}
答案 1 :(得分:1)
您已关闭char string2[] = "12ab";
条件并在最后if
之前放置了一个额外的大括号。这应该是正确的:
div
答案 2 :(得分:1)
试试这个:
@if (propiedadesFormularioDetalle != null)
{
<div class="panel panel-default">
<div class="panel-heading">Propiedades adicionales</div>
<div class="panel-body">
<dl class="dl-horizontal">
@foreach (KeyValuePair<string, string> propiedad in propiedadesFormularioDetalle)
{
<dt>
@Html.DisplayName(propiedad.Key)
</dt>
<dd>
@Html.DisplayFor(prop => propiedad.Value)
</dd>
}
</dl>
</div>
</div>
}
答案 3 :(得分:0)
@if (propiedadesFormularioDetalle != null)
{
<div class="panel panel-default">
<div class="panel-heading">Propiedades adicionales</div>
<div class="panel-body">
<dl class="dl-horizontal">
@foreach (KeyValuePair<string, string> propiedad in propiedadesFormularioDetalle)
{
<dt>@Html.DisplayName(propiedad.Key)</dt>
<dd>@Html.DisplayFor(prop => propiedad.Value)</dd>
}
</dl>
</div>
</div>
}
<强>无论其!无论什么在“if”语句之上都可以影响这个。如果你已经在代码块中,Razor会在“if”语句前面抱怨不必要的“@”。