# SZORM **Repository Path**: longang/SZORM ## Basic Information - **Project Name**: SZORM - **Description**: C# ORM,支持mssql,mysql,oracle,sqlite - **Primary Language**: C# - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2021-08-05 - **Last Updated**: 2024-04-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SZORM C# ORM,支持mssql,mysql,oracle,sqlite ## 使用方式 #### 定义一个基础类 ``` /// /// 基础字段 /// public class Basic { /// /// 主键 /// [SZColumn(MaxLength = 32, IsKey = true)] public string Key { get; set; } /// /// 添加时间,首次添加记录会自动更新 /// [SZColumn(IsAddTime = true)] public DateTime? AddTime { get; set; } /// /// 修改时间,该时间会每次更新的时候自动更新 /// [SZColumn(IsEditTime = true)] public DateTime? EditTime { get; set; } } ``` #### 定义一个实体类 ``` public class UserInfo:Basic { /// /// 登录用户名 /// [SZColumn(MaxLength = 100)] public string Name { get; set; } /// /// 手机号 /// [SZColumn(MaxLength = 11)] public string Tel { get; set; } /// /// 是否锁定,如果锁定后,将不能登录 /// public bool IsLock { get => isLock; set => isLock = value; } private bool isLock = false; /// /// 备注信息 /// public string Remarks { get; set; } } ``` #### app.config或者web.config文件中添加 ``` ``` #### 添加连接字符串,如果连接其他的数据库,请采用其他的数据库连接字符串 ``` ``` #### 继承DbContext,类名称与字符串名称一致"DB" ``` public class DB : DbContext { /// /// 用户信息,用于登录 /// public DbSet UserInfos { get; set; } protected override void Initialization() { } protected override void UpdataDBExce() { } } ``` #### ok大功告成,您可以使用啦. ## 常用方法 #### 添加 ``` using (DB db = new DB()) { UserInfo model=new UserInfo(); model.Name="张三"; model.Tel="1888888888"; model.Remarks="测试"; db.UserInfos.Add(model); db.Save(); } ``` #### 修改 ``` using (DB db = new DB()) { UserInfo model=db.UserInfos.Find(key) model.Name="张三"; model.Tel="1888888888"; model.Remarks="测试"; db.UserInfos.Edit(model); db.Save(); } ``` #### 删除 ``` using (DB db = new DB()) { db.UserInfos.Remove(key) db.Save(); } ``` #### 单表查询 ``` using (DB db = new DB()) { var query = db.UserInfos.AsQuery(); query = query.Where(w => w.LoginName.Contains("张")); query = query.OrderByDesc(o => o.AddTime); var result= query.ToList(); } ```