杭州做网站多少钱,淘宝优惠的网站怎么做,青柠视频免费版中文字幕,wordpress怎么批量修改分类CoreShop源程序是以数据库优先进行定义的#xff0c;所以其本身不包含代码优先的定义#xff0c;但本从更习惯于代码优先#xff0c;所以为其定义了代码优先的定义。
1 CoreCms.Net.Model.Entities.SysRole
using SqlSugar;
using System.ComponentModel.DataAnnotations… CoreShop源程序是以数据库优先进行定义的所以其本身不包含代码优先的定义但本从更习惯于代码优先所以为其定义了代码优先的定义。
1 CoreCms.Net.Model.Entities.SysRole
using SqlSugar;
using System.ComponentModel.DataAnnotations; namespace CoreCms.Net.Model.Entities
{ /// summary /// 【系统角色--类】 /// remarks /// 摘要 /// 通过该实体类及其属性成员用于实现当前程序【CoreCms.Net.Model】.【实体集】.【SysRole】实体与“[CoreShop230628].[SysRole]”表之间的CURD的交互操作并把这些数据存储到数据库设置实例中(内存)。 /// /remarks /// /summary [SugarTable(SysRole, TableDescription 角色表)] public class SysRole { /// summary /// 【角色编号】 /// remarks /// 摘要 /// 获取/设置系统角色实体1个指定实例的整型编号值。 /// IsPrimaryKey主键 /// IsIdentit自增 /// /remarks /// /summary [Display(Name 角色编号)] [SugarColumn(ColumnDescription 角色编号, IsPrimaryKey true, IsIdentity true)] [Required(ErrorMessage 请输入{0})] public int Id { get; set; } /// summary /// 【角色名称】 /// remarks /// 摘要 /// 获取/设置1个指定系统角色的名称。 /// /remarks /// /summary [Display(Name 角色名称)] [SugarColumn(ColumnDescription 角色名称, ColumnDataType nvarchar, Length 50)] [Required(ErrorMessage 请输入{0})] [StringLength(50, ErrorMessage 【{0}】不能超过{1}字符长度)] public string RoleName { get; set; } /// summary /// 【角色名称】 /// remarks /// 摘要 /// 获取/设置1个指定系统角色的标识。 /// /remarks /// /summary [Display(Name 角色标识)] [SugarColumn(ColumnDescription 角色标识, ColumnDataType nvarchar, Length 50, IsNullable true)] [StringLength(50, ErrorMessage 【{0}】不能超过{1}字符长度)] public string RoleCode { get; set; } /// summary /// 【角色名称】 /// remarks /// 摘要 /// 获取/设置1个指定系统角色的备注。 /// /remarks /// /summary [Display(Name 备注)] [SugarColumn(ColumnDescription 备注, ColumnDataType nvarchar, Length 255, IsNullable true)] [StringLength(255, ErrorMessage 【{0}】不能超过{1}字符长度)] public string Comments { get; set; } /// summary /// 【逻辑删除】 /// remarks /// 摘要 /// 获取/设置1个值false(可用0)/true(已经被逻辑删除1)该值指示系统角色实体的1个指定实例是否已经处于逻辑删除状态。 /// /remarks /// /summary [Display(Name 是否删除,0否,1是)] [SugarColumn(ColumnDescription 是否删除,0否,1是)] [Required(ErrorMessage 请输入{0})] public bool Deleted { get; set; } /// summary /// 【创建时间】 /// remarks /// 摘要 /// 获取/设置系统角色实体1个指定实例第1次被持久化到系统角色表中的时间。 /// /remarks /// /summary [Display(Name 创建时间)] [SugarColumn(ColumnDescription 创建时间)] [Required(ErrorMessage 请输入{0})] public DateTime CreateTime { get; set; } /// summary /// 【修改时间】 /// remarks /// 摘要 /// 获取/设置系统角色1个指定实例最后1次被修改后持久化到系统角色表中的时间。 /// /remarks /// /summary [Display(Name 修改时间)] [SugarColumn(ColumnDescription 修改时间)] public DateTime UpdateTime { get; set; } }
}
2 CoreCms.Net.Model.Entities.SysUser
using SqlSugar;
using System.ComponentModel.DataAnnotations; namespace CoreCms.Net.Model.Entities
{ /// summary /// 【系统用户--类】 /// remarks /// 摘要 /// 通过该实体类及其属性成员用于实现当前程序【CoreCms.Net.Model】.【实体集】.【SysUser】实体与“[CoreShop230628].[SysUser]”表之间的CURD的交互操作并把这些数据存储到数据库设置实例中(内存)。 /// /remarks /// /summary [SugarTable(SysUser, TableDescription 用户表)] public partial class SysUser { /// summary /// 【系统用户色编号】 /// remarks /// 摘要 /// 获取/设置系统角色实体1个指定实例的整型编号值。 /// IsPrimaryKey主键 /// IsIdentit自增 /// /remarks /// /summary [Display(Name 用户id)] [SugarColumn(ColumnDescription 用户id, IsPrimaryKey true, IsIdentity true)] [Required(ErrorMessage 请输入{0})] public int Id { get; set; } /// summary /// 【账号】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的账号名称。 /// /remarks /// /summary [Display(Name 账号)] [SugarColumn(ColumnDescription 账号, ColumnDataType nvarchar, Length 50, IsNullable true)] [StringLength(50, ErrorMessage 【{0}】不能超过{1}字符长度)] public string UserName { get; set; } /// summary /// 【密码】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的登录密码。 /// /remarks /// /summary [Display(Name 密码)] [SugarColumn(ColumnDescription 密码, ColumnDataType nvarchar, Length 100, IsNullable true)] [StringLength(100, ErrorMessage 【{0}】不能超过{1}字符长度)] public string PassWord { get; set; } /// summary /// 【昵称】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的昵称。 /// /remarks /// /summary [Display(Name 昵称)] [SugarColumn(ColumnDescription 昵称, ColumnDataType nvarchar, Length 50, IsNullable true)] [StringLength(50, ErrorMessage 【{0}】不能超过{1}字符长度)] public string NickName { get; set; } /// summary /// 【昵称】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的头像。 /// 说明 /// 该属性通过网络格式的绝/相对路径来映射用户头像图片。 /// /remarks /// /summary [Display(Name 头像)] [SugarColumn(ColumnDescription 头像, ColumnDataType nvarchar, Length 255, IsNullable true)] [StringLength(255, ErrorMessage 【{0}】不能超过{1}字符长度)] public string Avatar { get; set; } /// summary /// 【性别】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的性别。 /// /remarks /// /summary [Display(Name 性别)] [SugarColumn(ColumnDescription 性别)] [Required(ErrorMessage 请输入{0})] public int Sex { get; set; } /// summary /// 【手机号】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的手机号。 /// /remarks /// /summary [Display(Name 手机号)] [SugarColumn(ColumnDescription 手机号, ColumnDataType nvarchar, Length 50, IsNullable true)] [StringLength(50, ErrorMessage 【{0}】不能超过{1}字符长度)] public string Phone { get; set; } /// summary /// 【邮箱】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的邮箱。 /// /remarks /// /summary [Display(Name 邮箱)] [SugarColumn(ColumnDescription 邮箱, ColumnDataType nvarchar, Length 50, IsNullable true)] [StringLength(50, ErrorMessage 【{0}】不能超过{1}字符长度)] public string Email { get; set; } /// summary /// 【邮箱验证】 /// remarks /// 摘要 /// 获取/设置1个值false(不需要)/true(需要)该值指示1个指定系统用户是否需要在邮箱验证操作后才能执行登录操作。 /// /remarks /// /summary [Display(Name 邮箱是否验证)] [SugarColumn(ColumnDescription 邮箱是否验证)] [Required(ErrorMessage 请输入{0})] public bool EmailVerified { get; set; } /// summary /// 【实名】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的实名。 /// /remarks /// /summary [Display(Name 真实姓名)] [SugarColumn(ColumnDescription 真实姓名, ColumnDataType nvarchar, Length 50, IsNullable true)] [StringLength(50, ErrorMessage 【{0}】不能超过{1}字符长度)] public string TrueName { get; set; } /// summary /// 【身份证号】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的身份证号。 /// /remarks /// /summary [Display(Name 身份证号)] [SugarColumn(ColumnDescription 身份证号, ColumnDataType nvarchar, Length 50, IsNullable true)] [StringLength(50, ErrorMessage 【{0}】不能超过{1}字符长度)] public string IdCard { get; set; } /// summary /// 【出生日期】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的生日。 /// /remarks /// /summary [Display(Name 出生日期)] [SugarColumn(ColumnDescription 出生日期, IsNullable true)] public DateTime? Birthday { get; set; } /// summary /// 【个人简介】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的个人简介。 /// /remarks /// /summary [Display(Name 个人简介)] [SugarColumn(ColumnDescription 个人简介, ColumnDataType nvarchar, Length 500, IsNullable true)] [StringLength(500, ErrorMessage 【{0}】不能超过{1}字符长度)] public string Introduction { get; set; } /// summary /// 【机构编号】 /// remarks /// 摘要 /// 获取/设置1个指定系统用户的机构编号。 /// /remarks /// /summary [Display(Name 机构id)] [SugarColumn(ColumnDescription 机构id, IsNullable true)] public int? OrganizationId { get; set; } /// summary /// 【状态】 /// remarks /// 摘要 /// 获取/设置1个值0(正常)/1 (冻结)该值指示1个指定系统用户是否需要在邮箱验证操作后才能执行登录操作。 /// /remarks /// /summary [Display(Name 状态,0正常,1冻结)] [SugarColumn(ColumnDescription 状态,0正常,1冻结)] [Required(ErrorMessage 请输入{0})] public int State { get; set; } /// summary /// 【逻辑删除】 /// remarks /// 摘要 /// 获取/设置1个值false(可用0)/true(已经被逻辑删除1)该值指示系统用户实体的1个指定实例是否已经处于逻辑删除状态。 /// /remarks /// /summary [Display(Name 是否删除,0否,1是)] [SugarColumn(ColumnDescription 是否删除,0否,1是)] [Required(ErrorMessage 请输入{0})] public bool Deleted { get; set; } /// summary /// 【注册时间】 /// remarks /// 摘要 /// 获取/设置系统用户实体1个指定实例第1次被持久化到系统用户表中的时间。 /// /remarks /// /summary [Display(Name 注册时间)] [SugarColumn(ColumnDescription 注册时间)] [Required(ErrorMessage 请输入{0})] public DateTime CreateTime { get; set; } /// summary /// 【修改时间】 /// remarks /// 摘要 /// 获取/设置系统用户1个指定实例最后1次被修改后持久化到系统角色表中的时间。 /// /remarks /// /summary [Display(Name 修改时间)] [SugarColumn(ColumnDescription 修改时间, IsNullable true)] public DateTime UpdateTime { get; set; } }
}
3 CoreCms.Net.Core.Config.SqlSugarSetup
using Microsoft.Extensions.DependencyInjection;
using SqlSugar;
using SqlSugar.IOC;
using System.Reflection; namespace CoreCms.Net.Core.Config
{ /// summary /// 【SqlSugarCore中间件启动--类】 /// remarks /// 摘要 /// 通过该类中的方法成员把SqlSugarCore中间件依赖注入到.Net(Core)框架内置依赖注入容器中。 /// /remarks /// /summary public static class SqlSugarSetup { /// param nameservices.Net(Core)框架内置依赖注入容器实例。/param /// summary /// 【配置服务】 /// remarks /// 摘要 /// 通过该方法成员把SqlSugarCore中间件依赖注入到.Net(Core)框架内置依赖注入容器中。。 /// /remarks /// /summary public static void AddSqlSugarSetup(this IServiceCollection services) { if (services null) throw new ArgumentNullException(nameof(services)); //注入 ORM SugarIocServices.AddSqlSugar(new IocConfig() { //数据库连接 /*ConnectionString AppSettingsConstVars.DbSqlConnection, //判断数据库类型 DbType AppSettingsConstVars.DbDbType IocDbType.MySql.ToString() ? IocDbType.MySql : IocDbType.SqlServer,*/ ConnectionString Server.;uidzz;pwdzz;DatabaseCoreShop230628;MultipleActiveResultSetstrue;poolingtrue;min pool size5;max pool size32767;connect timeout20;EncryptTrue;TrustServerCertificateTrue;, DbType IocDbType.SqlServer, //是否开启自动关闭数据库连接-//不设成true要手动close IsAutoCloseConnection true, }); //设置参数 services.ConfigurationSugar(db { db.CurrentConnectionConfig.InitKeyType InitKeyType.Attribute; //说明CoreShop的程序是数据库优先即必须先生成指定的数据库本人更为喜欢代码优先所以进行了以下定义来实现代码优先。 //如果指定的数据库软件中不存在指定的数据库则自动生成该数据库。 db.DbMaintenance.CreateDatabase(); //通过反射操作获取领域文件夹中的所有实体的类型实例。 //直接获取指定项目中所有类的类型实例。 Assembly assembly Assembly.Load(CoreCms.Net.Model); //通过过滤操作获取领域文件夹中的所有实体的类型实例。 //注意“Where”过滤操作中“ c.Namespace”最好使用“Contains”而不要使用“”。 Type[] _typeArray assembly.GetTypes() .Where(c c.Namespace.Contains(CoreCms.Net.Model.Entities) c.IsClass)//过滤操作。 .ToArray(); //如果数据库软件对自动生成的数据库支持自动备份操作则通过下行语句在自动生成该数据库中根据当前项目中的实体类自动生成相应的表。 //注意SetStringDefaultLength(stringDefaultLength)必须定义在下行语句中否则在自动生成表时该约束定义将不会被映射到表的字段上。 db.CodeFirst.SetStringDefaultLength(50).BackupTable().InitTables(_typeArray); }); } }
}
4 Program.cs
using CoreCms.Net.Core.Config; var builder WebApplication.CreateBuilder(args);
//添加数据库连接SqlSugar注入支持
builder.Services.AddSqlSugarSetup();
5 CoreCms.Net.Web.Admin.Controllers.SysRoleController
using Microsoft.AspNetCore.Mvc;
using System.ComponentModel;
using SqlSugar;
using SqlSugar.IOC;
using CoreCms.Net.Model.Entities; namespace CoreCms.Net.Web.Admin.Controllers
{ [ApiController] [Route([controller]/[action])] public class SysRoleController : ControllerBase { private readonly ISqlSugarClient _sqlSugarClient; private ISqlSugarClient DbBaseClient; public SysRoleController() { _sqlSugarClient DbScoped.SugarScope; } private SqlSugarScope GetDbClient() { // 必须要as后边会用到切换数据库操作 return _sqlSugarClient as SqlSugarScope; } #region 获取列表 [HttpPost] [Description(获取列表)] public async Task/*AdminUiCallBack*/ bool GetPageList() { DbBaseClient GetDbClient(); var v await DbBaseClient .QueryableSysRole() .ToListAsync(); return true; } #endregion }
} 对以上功能更为具体实现和注释见230725_001CoreShop230628(获取数据库中的数据)。