先补充一下前一篇中的 TPH 策略的内容——非完整性类型鉴别器。这个东西官方文档写了等于没写,许多大伙伴可能不知道是啥玩意儿。不用慌,老周给你整个示例,你就懂了。 这种特例多见于先有数据库(DB First)的方案。好,那咱们就先建库,脚本如下,很简单。 use master; go -- 创建数据 ...
在我们常见的软件中,菜单栏,工具栏,状态栏,以及右键弹出的上下文菜单,基本属于是一个软件的标配,如WPS,Microsoft Office组件,IE浏览器,Visual Studio等,使用这些组件布局系统,不仅可以提高使用便捷性,合理利用页面空间,由于符合Windows用户操作习惯,还能让用户快速... ...
前面四篇我们讲了快速搭建、目录结构、CRUD、关联表处理。今天说后台系统最核心的东西——权限控制。 一个后台系统,没有权限控制,就像银行没有保险柜。 一、EasyAdminBlazor 的权限模型 内置的是标准的 RBAC(Role-Based Access Control) 模型,也就是"用户 → ...
前面三篇我们讲了: 第一篇:3分钟搭一个Blazor后台 第二篇:项目目录结构详解 第三篇:几十行代码搞定CRUD 今天来点实战,用一个真实的新闻管理模块做案例,把专栏管理和文章管理完整走一遍。看看关联表、枚举、富文本编辑器这些实际项目中一定会遇到的需求,在EasyAdminBlazor里怎么处理。 ...
DbCommand介绍 DbCommand对象用于向数据存储区发送一条结构化查询语言(SQL)命令。DbCommand对象 不仅可以执行查询,插入,更新,删除的数据操作(DML)指令,还可以执行数据定义(DDL)指令 创建数据库,数据表,更改模式信息等。 例如查询数据库中表基础框架 DbComman ...
前面两篇我们讲了怎么3分钟搭一个Blazor后台,以及项目的目录结构。今天讲点更爽的——怎么在写少量代码或不写代码的情况下,把一个新模块的后台页面搞出来。 一、传统方式:写一个模块要多久? 假设你要加一个「产品管理」模块,传统开发流程: 建数据库表(写SQL) 写实体类(映射字段) 写Reposit ...
ADO.NET连接类概述ADO.NET库包含可用于数据存储区和客户应用程序之间传输数据的类。 连接类 负责在客户端程序的非连接数据类与数据存储区之间传输数据的类成为连接类。ado.net提供了下面几种类。 OLEDB 用于access,excel,文本等ODBC 用于多种数据源提供的多种数据访问功能 ...
上篇文章我简单介绍了如何使用EasyAdminBlazor创建一个admin blazor项目。今天拿一个真实项目跑起来的文件夹截图,把每个目录的用途说清楚。 这是用dotnet new easyadmin -n MyProject创建后的完整结构: EasyAdminBlazorDemo/ ├── ...
在当今互联网时代,大家都提倡无纸化绿色办公,如扫码,在线,小程序等,既提高了效率,又节约纸张,绿色环保,但在某些特定的场景与人群(如超市收银),打印票据或收据是必不可少。今天我们以一些简单的小例子,简述基于.NET的Windows窗体编程中打印的常见用法,仅供学习分享使用,如有不足之处,还请指正。 ...
1、DataTable 转为 Xml 增加列的属性,保存文件,保存的极为简单的文件信息, 所有的字段或者属性信息,默认都是字符串类型。 如果需要保存每个字段的具体属性,可以在保存时,加入保存模式 2、DataView DataView是DataTable的一个窗口,可以存储或者过滤DataView的 ...
数据内容介绍(DataRow) 在介绍了DataTable,DataColumns之后,现在介绍DataRow。 上一节,我们创建了 DataTable,并添加了 DataColumns字段信息,数据表创建好了 框架,就可以添加数据,记录信息。 DataTable包含rows集合,包含DataRow ...
既然 EF Core 的设计理念是以面向对象的方式操作数据库,那么,继承问题是绕不过去的。然而大伙伴也知道,数据库是用表来存储数据记录的,表与表之间哪来的继承。很自然地,EF Core 必须在数据库与实体类之间做一些特殊处理,才能让存在继承关系的实体类与数据表之间的映射不被破坏。 EF Core 内 ...
在日常开发中,有时候需要弹出对话框,供用户选择使用,如字体对话框,颜色对话框等,今天我们一些简单的小例子,简述基于.NET的Windows窗体编程中常见对话框的使用,仅供学习分享使用,如有不足之处,还请指正。 概述 在使用某些软件时,经常会看到,点击一个按钮,然后弹出对话框,让用户选择某些内容,而这 ...
本内容主要介绍关于ADO.NET的相关内容。 aod.net类层次可划分为两个类别,连接对象与分连接对象。如下图 非连接对象,包括 DataSet,DataTable, DataRow,DataColumn,DataRelation等。 1、DataTable介绍 DataTable是将数据表格化, ...
EF Core 默认实现了许多值比较器,用于在实体状态追踪时检查属性值是否被修改。故大多情况下,咱们不需要操作心。但,凡是总有特殊情况,有些数据虽然值不相等,但所表示的意思是相等的。这种时候就不能依靠默认的比较器了。 老周举一个连外星人都知道的例子。假设有这样的实体类。 public class C ...
如何用一根网线实现主机间互传数据? 当需要在两台电脑之间迁移上百GB甚至TB级别的数据时,移动硬盘拷贝太慢、网盘限速让人抓狂、隔空投送又有平台限制。本文介绍一种零成本、无需路由器、速度快且稳定的方案:用一根普通网线直连两台电脑,通过手动配置IP和共享文件夹,实现局域网级别的极速传输。文章从物理连接、 ...
在实际应用中,列表控件主要用于显示列表格式的数据,然后供用户选择,常见的列表控件有ComboBox(下拉列表框),ListBox(列表框),CheckedListBox(带复选框的列表框),ListView(带图标的列表框),TreeView(树状结构的列表视图),今天我们以一些简单的小例子,简述列 ...
一、设计思路 表格 特性作用实现方式 限流 防止接口被刷、防止流量洪峰 令牌桶 / 滑动窗口 + Redis / 内存缓存 防重 防止前端重复点击 / 网络重试重复提交 请求唯一 ID + 短时间锁 幂等性 保证接口重复调用结果一致 唯一业务键 + 状态机 + 分布式锁 二、.NET 完整实现代码 ...
好像有一个月没发文了,这期间发生了些不愉快的事。都是些家庭矛盾,不提也罢。 最近很多裁员,不要听网上的营销胡说九道。实际上很多裁员跟 AI 没多大关系的,要么是找个借口(拿AI做文章以掩盖公司实力不行了),要么是不行了,没钱了,项目烂了,公司也烂了,全烂了。如果经济形势大好的话,你看看那些B资本家会 ...
一、安装依赖 # 基础包 Install-Package Polly # HTTP 集成(推荐) Install-Package Microsoft.Extensions.Http.Polly 二、策略与代码 1. 重试(Retry):自愈瞬时故障 作用:网络抖动、偶发超时、5xx 等临时错误自动重 ...