Dapper学习笔记(3)-增、删、改、查
2015-09-02 11:32
267 查看
一、建表
在数据库中建立如下三张表:
在本篇中只会用到T_Role表,剩下的表在后面的文章中将会涉及到。
二、创建实体类
在创建实体类时,属性名称一定要与数据库字段一一对应。在本篇中只会用到Role实体类,User实体类在后续文章中会涉及并且会有一定程度上的修改。
三、操作
在进行增、删、改、查操作之前,应先建立与数据库的连接,具体代码如下:
1、查询实体列表
2、添加实体
3、修改实体
4、删除实体
在数据库中建立如下三张表:
CREATE TABLE [dbo].[T_User] ( [UserId] [int] IDENTITY(1, 1) PRIMARY KEY NOT NULL, [Username] [nvarchar](256) NOT NULL, [Password] [nvarchar](500) NULL, [Email] [nvarchar](256) NULL, [PhoneNumber] [nvarchar](30) NULL, ) CREATE TABLE [dbo].[T_Role] ( [RoleId] [int] IDENTITY(1, 1) PRIMARY KEY NOT NULL, [RoleName] [nvarchar](256) NOT NULL, ) CREATE TABLE [dbo].[T_UserRole] ( [Id] [int] IDENTITY(1, 1) PRIMARY KEY NOT NULL, [UserId] [int] FOREIGN KEY REFERENCES [dbo].[T_User] ([UserId]) NOT NULL, [RoleId] [int] FOREIGN KEY REFERENCES [dbo].[T_Role] ([RoleId]) NOT NULL )
在本篇中只会用到T_Role表,剩下的表在后面的文章中将会涉及到。
二、创建实体类
public class User { public User() { Role = new List<Role>(); } public int UserId { get; set; } public string UserName { get; set; } public string Password { get; set; } public string Email { get; set; } public string PhoneNumber { get; set; } public List<Role> Role { get; set; } } public class Role { public int RoleId { get; set; } public string RoleName { get; set; } }
在创建实体类时,属性名称一定要与数据库字段一一对应。在本篇中只会用到Role实体类,User实体类在后续文章中会涉及并且会有一定程度上的修改。
三、操作
在进行增、删、改、查操作之前,应先建立与数据库的连接,具体代码如下:
private static readonly string connectionString = @"Data Source=.;Initial Catalog=test;User Id=sa;Password=sa@126.com"; private SqlConnection OpenConnection() { SqlConnection connection = new SqlConnection(connectionString); connection.Open(); return connection; }
1、查询实体列表
private List<Role> QueryRoleData() { using (IDbConnection con = OpenConnection()) { string query = @"select * from T_Role"; return con.Query<Role>(query, null).ToList<Role>(); } }
2、添加实体
private int AddRole() { using (IDbConnection con = OpenConnection()) { Role role = new Role(); role.RoleName = "开发人员"; string strSql = @"insert into T_Role(RoleName)values(@RoleName)"; int result = con.Execute(strSql, role); return result; } }
3、修改实体
private int UpdateRole(Role role) { using (IDbConnection con = OpenConnection()) { role.RoleName = "开发主管"; string query = "update T_Role set RoleName=@RoleName where RoleId=@RoleId"; return con.Execute(query, role); } }
4、删除实体
private int DeleteRole(Role role) { using (IDbConnection con = OpenConnection()) { string query = "delete from T_Role where RoleId=@RoleId"; return con.Execute(query, role); } }
相关文章推荐
- Android小知识点、小疑问之 ListView中的灵异事件ListView跟Button 不能同时点击
- [轉]Android的内存泄漏和调试
- iOS 9 适配系列教程
- Android之Activity的启动方式
- iOS录音
- Intellij里新建maven的webapp项目
- Android 官方推荐 : DialogFragment 创建对话框
- android studio 获取SHA1值
- 如何快速制作App应用软件?国内有哪些比较好用的App制作平台?
- Android中的dispatchTouchEvent()、onInterceptTouchEvent()和onTouchEvent()
- Android系统SVC命令教程
- JSON通过配置文件格式化时间属性(解决[object Object]问题)
- Android WebView 与JS的数据交互
- Unity Sprite Packer 使用指南
- Html emed 和 object
- Spring MVC之@RequestMapping 详解
- Android FoldingLayout 折叠布局 原理及实现(一)
- android高仿酷狗音乐播放器源码下载
- android 照相
- android PopupWindow实现从底部弹出或滑出选择菜单或窗口