You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于ASP.NET Core创建垃圾桶(Bin)的视图开发问询

基于ASP.NET Core创建垃圾桶(Bin)的视图开发问询

看起来你正在开发一个用于创建垃圾桶(Bin)的ASP.NET Core Razor视图,我把这段视图代码整理成规范的格式,同时补充一些关键细节说明:

整理后的完整视图代码

@model BinViewModel

<form id="binForm">
    @Html.AntiForgeryToken()
    @Html.ValidationSummary(true, "", new { @class = "text-danger" })
    <fieldset>
        <div class="form-group">
            @Html.LabelFor(model => model.CreateBinModel.StreetName, htmlAttributes: new { @class = "col-form-label" })
            @Html.TextBoxFor(model => model.CreateBinModel.StreetName, new { @class = "form-control", @placeholder = "Street Name", @autocomplete = "off" })
            @Html.ValidationMessageFor(model => model.CreateBinModel.StreetName, "", new { @class = "text-danger" })
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.CreateBinModel.Capacity, htmlAttributes: new { @class = "col-form-label" })
            @Html.TextBoxFor(model => model.CreateBinModel.Capacity, new { @class = "form-control" })
            @Html.ValidationMessageFor(model => model.CreateBinModel.Capacity, "", new { @class = "text-danger" })
        </div>
        <!-- 可根据业务需求继续添加其他表单字段,比如垃圾桶类型、安装日期等 -->
    </fieldset>
    <!-- 建议补充提交按钮,示例:
    <button type="submit" class="btn btn-primary">创建垃圾桶</button>
    -->
</form>

关键细节说明

  • 模型绑定:视图绑定了BinViewModel,其中嵌套的CreateBinModel专门承载垃圾桶创建数据,这种分层设计能很好地分离不同业务场景的数据结构
  • 安全防护:@Html.AntiForgeryToken()生成防伪令牌,可有效防范跨站请求伪造(CSRF)攻击,这是ASP.NET Core表单开发的标准安全实践
  • 验证机制:ValidationSummary用于展示全局验证错误,ValidationMessageFor针对单个字段显示专属错误提示,配合模型类上的数据注解(如[Required]、[Range])就能实现前后端双重验证
  • 样式适配:表单控件统一使用Bootstrap的form-group、col-form-label、form-control类,能快速构建美观的响应式表单界面
  • 用户体验优化:StreetName输入框设置autocomplete="off"避免浏览器自动填充干扰,同时添加占位符提示用户输入内容

如果后续需要完善这个视图(比如添加更多字段、实现AJAX异步提交等),随时可以细化需求进一步调整!

备注:内容来源于stack exchange,提问作者Erck

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 08:28:17