首页
留言板
壁纸
友链
直播
统计
推荐
百度一下
腾讯视频
Search
1
芯宇宙Excel仓库管理系统 三种数据库 | 三种网络部署模式
37 阅读
2
鞋服小店没有大单量,怎么找到低价寄快递渠道?
14 阅读
3
Excel二维码标签插件 固定资产/设备铭牌/合格证批量生成工具支持Excel、WPS,一键批量生成千百个二维码、条形码标签
14 阅读
4
别再花高价寄快递!鞋服商家专属低价寄件小程序,全国 3 元起、大件 20kg 仅 30 元,亲测靠谱
13 阅读
5
鞋服商家低价寄快递渠道推荐,电商寄件小程序散户也能享批发价
11 阅读
默认分类
资讯
技术
VBA
asp
php
分享
鞋运宝
VPS
阿里云
腾讯云
系统
windows
Linux
日常
登录
Search
标签搜索
寄快递
鞋服商家低价寄快递
低价寄快递渠道
VBA
鞋运宝
低价快递小程序
得物快递
EXCEL标签生成插件
鞋服电商
BootstrapBlazor
芯宇宙技术社
累计撰写
12
篇文章
累计收到
1
条评论
首页
栏目
默认分类
资讯
技术
VBA
asp
php
分享
鞋运宝
VPS
阿里云
腾讯云
系统
windows
Linux
日常
页面
留言板
壁纸
友链
直播
统计
推荐
百度一下
腾讯视频
搜索到
1
篇与
的结果
2026-07-28
BootstrapBlazor(Server)完整标准目录结构
结合 Identity 登录注册、后台业务、分层解耦、单人易维护设计,区分页面层、业务服务层、数据仓储、模型、公共工具、认证,适配你「注册 / 登录 / 权限 / 后台存数据带操作人」全套需求。 YourProject/ ├── Program.cs # 全局DI、认证、BB服务注册入口 ├── App.razor # 路由+全局授权拦截 ├── appsettings.json 数据库连接串、配置 ├── wwwroot/ 静态资源(css/js/图片) │ ├── Data/ 数据库&Identity核心 │ ├── AppDbContext.cs EF上下文(Identity+业务表) │ ├── Migrations/ EF迁移文件 │ ├── Entities/ 全部数据库实体 │ ├── Identity/ 扩展用户实体 │ │ └── AppUser.cs │ └── Business/ 业务表(商品/订单等) │ └── Product.cs │ ├── Models/ DTO、表单Model、视图模型 │ ├── Account/ 登录/注册表单模型 │ │ ├── LoginModel.cs │ │ └── RegisterModel.cs │ └── Dtos/ 接口传输DTO │ ├── Repositories/ 数据仓储层(解耦EF) │ ├── IProductRepo.cs │ └── ProductRepo.cs │ ├── Services/ 业务逻辑层(核心业务) │ ├── AccountService.cs 登录注册封装(可选,简化页面代码) │ └── ProductService.cs 商品增删改查业务 │ ├── Shared/ 全局共享组件、布局、工具 │ ├── MainLayout.razor 主布局(导航、退出按钮) │ ├── RedirectToLogin.razor 未登录跳转组件 │ ├── AuthHelper.cs 获取当前登录用户工具类 │ └── Components/ 通用弹窗、表格组件 │ ├── Pages/ 所有页面(路由页面) │ ├── Account/ 账号相关页面 │ │ ├── Login.razor │ │ └── Register.razor │ └── Admin/ 后台管理页面(需授权) │ └── Product.razor 商品管理(保存带创建人) └── obj / bin 编译缓存(忽略) 分层职责说明(单人开发清晰不混乱)Data 数据层(只管数据库)AppDbContext:包含 Identity 用户表 + 业务实体 DbSetMigrations:EF 自动生成迁移,不要手动修改职责:只定义表关系,不写业务逻辑Entities 实体层(数据库映射类)Entities/Identity/AppUser继承 IdentityUser,扩展昵称、手机号等自定义字段Entities/Business/Product业务表,包含 CreateUserName 创建人、创建时间等审计字段规范:只包含属性,无复杂业务方法(轻量实体,单人不用重型 DDD)Models 视图传输层(页面表单、返回对象)Account 文件夹:登录、注册页面绑定的表单类(LoginModel/RegisterModel)Dtos:列表查询返回、新增编辑专用传输对象,隔离数据库实体,避免泄露敏感字段Repositories 仓储层(隔离 EF Core)接口 + 实现分离,页面 / 服务不直接操作 DbContext示例:IProductRepo 定义查询、新增、修改接口ProductRepo 实现 DbContext 操作好处:后续换数据库、加缓存只改仓储,页面完全不动Services 业务层(所有业务规则放这里,页面轻量化)AccountService(可选推荐)封装注册、登录、退出、校验逻辑,页面只调用方法,不写大量 Identity 代码ProductService商品新增、编辑、删除、列表查询,自动注入仓储,自动携带当前操作人用户名页面只调用 _productService.SaveAsync(model, userName),不用重复写赋值逻辑Shared 共享公共资源MainLayout:全局侧边栏、顶部导航、登录 / 退出按钮RedirectToLogin:授权拦截跳转组件AuthHelper:静态工具,封装获取登录用户名、UserId、是否登录Shared/Components:全局复用弹窗、表格、搜索组件Pages 页面层(纯 UI,只做交互,不写复杂逻辑)Pages/Account 公开页面(无需 [Authorize])Login.razor/ Register.razor:登录注册表单,调用 AccountServicePages/Admin 后台私有页面(加 @attribute [Authorize])所有管理页面,仅调用 Service 获取数据,界面使用 BootstrapBlazor 组件(Table/Dialog/FormInput)页面原则:不写 EF、不写业务判断,只接收数据、弹窗、按钮事件适配你需求的分层优势(注册 + 登录 + 权限 + 保存带用户名)登录身份统一在 Shared/AuthHelper 获取,所有后台页面复用,无重复代码新增数据自动赋值用户名逻辑封装在 Service,每个后台页面不用重复写Identity 登录注册逻辑封装 AccountService,Login/Register 页面极简Admin 文件夹全部页面统一授权,结构清晰,一眼区分前台 / 后台仓储隔离数据库,后期加日志、数据过滤只需改 Repo,页面不动极简单人优化建议(不用过度分层)如果你是个人小型项目,不想拆 Repo+Service 两层,可以简化:简化目录(小型项目专用)删除 Repositories,Service 直接注入 DbContext,减少文件数量 YourProject/ ├── Data/ ├── Entities/ ├── Models/ ├── Services/ // Service直接操作DbContext,跳过仓储 ├── Shared/ └── Pages/ 适合:后台管理、个人工具、小型业务,开发更快,维护成本低路由规范约定账号页:/account/login / /account/register后台管理统一前缀 /admin/xxx,全部加授权标签所有页面统一放在 Pages 下,不零散丢根目录关键文件存放位置对应功能表格功能 对应目录文件用户注册 / 登录页面 Pages/Account获取当前登录账号 Shared/AuthHelper.cs用户数据库实体 Entities/Identity/AppUser.cs数据库上下文 Data/AppDbContext.cs商品等业务实体 Entities/Business后台商品管理页面 Pages/Admin商品增删业务逻辑 Services/ProductService全局布局、退出按钮 Shared/MainLayout未登录自动跳转 Shared/RedirectToLogin
2026年07月28日
7 阅读
0 评论
0 点赞