在 ASP.net 核心 MVC 2 中使用 ASP.net MVC 5 脚手架
Using ASP.net MVC 5 scaffolding in ASP.net Core MVC 2
在 MVC 5 中,当您使用模型搭建视图、创建模型时 - 为了构建将绑定到模型的表单 - MVC 5 中的搭建工具使用列(col-md-10 和 col -md-2) 将标签放在文本框的左侧:
<div class="form-group">
@Html.LabelFor(model => model.Username, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.Username, new { htmlAttributes = new { @class = "form-control", autocomplete = "off" } })
@Html.ValidationMessageFor(model => model.Username, "", new { @class = "text-danger" })
</div>
</div>
在 Core MVC 2 中,所有标签都在文本框上方 - 这是超级 space 低效的:
<div class="form-group">
<label asp-for="Email" class="control-label"></label>
<input asp-for="Email" class="form-control" />
<span asp-validation-for="Email" class="text-danger"></span>
</div>
我可以手动编辑所有这些,但这会破坏脚手架的目标并且需要很长时间。
是否有任何方法可以让脚手架使用以前的 col 类型的布局 - 或者是否有任何第三方选项?
我在 Google 中找不到任何内容。谢谢
脚手架模板很容易根据您的喜好进行编辑。
在 Asp.Net Core MVC 2 中,模板现在是 cshtml 而不是 t4。
您只需将模板复制到项目中 ,然后下次 运行 脚手架将使用您的模板而不是默认模板。
在 MVC 5 中,当您使用模型搭建视图、创建模型时 - 为了构建将绑定到模型的表单 - MVC 5 中的搭建工具使用列(col-md-10 和 col -md-2) 将标签放在文本框的左侧:
<div class="form-group">
@Html.LabelFor(model => model.Username, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.Username, new { htmlAttributes = new { @class = "form-control", autocomplete = "off" } })
@Html.ValidationMessageFor(model => model.Username, "", new { @class = "text-danger" })
</div>
</div>
在 Core MVC 2 中,所有标签都在文本框上方 - 这是超级 space 低效的:
<div class="form-group">
<label asp-for="Email" class="control-label"></label>
<input asp-for="Email" class="form-control" />
<span asp-validation-for="Email" class="text-danger"></span>
</div>
我可以手动编辑所有这些,但这会破坏脚手架的目标并且需要很长时间。
是否有任何方法可以让脚手架使用以前的 col 类型的布局 - 或者是否有任何第三方选项?
我在 Google 中找不到任何内容。谢谢
脚手架模板很容易根据您的喜好进行编辑。
在 Asp.Net Core MVC 2 中,模板现在是 cshtml 而不是 t4。
您只需将模板复制到项目中