C# 剃刀:<;文本>;条件语句内的标记抛出错误 @if(Model.Property!=null) { RenderPartial(“~/Views/CustomView.cshtml”,Model); (线路抛出错误) }

C# 剃刀:<;文本>;条件语句内的标记抛出错误 @if(Model.Property!=null) { RenderPartial(“~/Views/CustomView.cshtml”,Model); (线路抛出错误) },c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,错误:“text”元素未关闭。所有元素必须是自动关闭的或具有匹配的结束标记 我很难理解为什么第二组标记返回该错误。如果您能帮助理解,我们将不胜感激。在Razor中,标签必须正确嵌套嵌套不正确 我认为您只需删除所有和标记即可: @if (Model.Property != null) { <text> <div class="row"> </text> Html.RenderPartial("~/Views/CustomV

错误:“text”元素未关闭。所有元素必须是自动关闭的或具有匹配的结束标记


我很难理解为什么第二组
标记返回该错误。如果您能帮助理解,我们将不胜感激。

在Razor中,标签必须正确嵌套<代码>嵌套不正确

我认为您只需删除所有
标记即可:

@if (Model.Property != null)
{
    <text>
        <div class="row">
    </text>
    Html.RenderPartial("~/Views/CustomView.cshtml", Model);
    <text> (line throwing error)
        </div>
    </text>
}
@if(Model.Property!=null)
{
@部分(“~/Views/InTimeTemplate/InputFormElements/ReadMore.cshtml”,Model);
}
这相当于:

@if (Model.Property != null)
{
    <div class="row">
        @Html.Partial("~/Views/InTimeTemplate/InputFormElements/ReadMore.cshtml", Model);
    </div>
}
@if(Model.Property!=null)
{
@{
RenderPartial(“~/Views/InTimeTemplate/InputFormElements/ReadMore.cshtml”,Model);
}
}
  • Partial
    将返回结果,由于
    @
  • RenderPartial
    将直接渲染它,但您需要使用
    @{
    ..
    }
    引入一个C#块

    • 有点晚了,但仍然:

      例如,您可以使用“@”:

      像这样:

      @if (Model.Property != null)
      {
          <div class="row">
              @{
                  Html.RenderPartial("~/Views/InTimeTemplate/InputFormElements/ReadMore.cshtml", Model);
              }
          </div>
      }
      
      (int t=0;t我已经试过了。删除
      标记会抛出“无法隐式地将HtmlHelper.RenderPartial上的类型“void”转换为“object”。没有
      标记,一切都正常。@Chris我的第一个版本的答案是错误的,我复制/粘贴有点太快了,请尝试更新的版本。排序。仍然忘记将HtmlHelper括在花括号中。谢谢
      @for (int t = 0; t < Model.TrainLines[i].Stations.Count; t++)
                  {
                      <circle id="pointA" cx="@stationCounter" cy="@trainLineCounter" r="3" />
                     @: <text x="@stationCounter" y="@trainLineCounter" dy="30">A</text>
                      stationCounter += 50;
                  }