【问题标题】:Asp.NET MVC 6, TagHelper "asp-for" to Model itselfAsp.NET MVC 6,TagHelper “asp-for” 为自己建模
【发布时间】:2016-09-17 13:59:01
【问题描述】:

假设我有这个部分视图:

@model DateTime?
<input asp-for="???" class="form-control" />

什么去???将其自身绑定到模型?

【问题讨论】:

    标签: asp.net-core-mvc tagbuilder


    【解决方案1】:

    用途:

    <input asp-for="@Model" class="form-control" />
    

    【讨论】:

      【解决方案2】:

      看起来 asp-for 标签助手设置了输入 html 标签的“名称”和“值”属性。如果您的模型是简单类型或复杂类型,其行为类似于字符串或 DateTime? 等值类型,则 asp-for 帮助程序无法设置“名称”属性。所以你的选择是:

      @model DateTime?
      <input name="mytime" value="@Model" class="form-control" />
      

      还有控制器:

      public IActionResult ReadMyForm(DateTime? mytime)
      {
          // Do your thing...
          return Ok();
      }
      

      或者如果你坚持使用 asp-for,那么你可以使用一些小技巧:

      @model DateTime?
      @{
          var mytime = Model;
      }
      <input asp-for="@mytime" class="form-control" />
      

      迟到总比没有好,我猜 :)

      【讨论】:

        猜你喜欢
        • 2016-08-23
        • 1970-01-01
        • 2020-12-08
        • 2016-07-28
        • 2011-01-29
        • 2020-01-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多