回到目錄 Dapper作為小型ORM的代表作品被我們應用到了dotnet core的項目中,下麵將把自己在項目中使用dapper進行curd操作的過程寫一下,後期可能會遇到一些問題,大叔也會在這個系列之中進行完善,希望對各位學生有所幫助! 一 安裝nuget的dapper包包 二 在startup中 ...
Dapper作為小型ORM的代表作品被我們應用到了dotnet core的項目中,下麵將把自己在項目中使用dapper進行curd操作的過程寫一下,後期可能會遇到一些問題,大叔也會在這個系列之中進行完善,希望對各位學生有所幫助!
一 安裝nuget的dapper包包
二 在startup中註冊dapper倉儲,並現時註冊資料庫類型和資料庫連接串,因為在mysql和sqlserver中,它們的連接串是不同的,模塊化設計請看大叔這篇文章
services.UseLog4Logger(o => { o.Log4ConfigFileName = "log4.config"; o.ProjectName = "test"; }).UseDapper(o => { o.ConnString = "Server=localhost;DataBase=test2;UID=root;Password=root;charset=utf8;port=3306;SslMode=None"; o.DbType = DbType.MySql; }).UseDefaultMQ();
三 進行我們的增刪改查的操作,主要把測試中的代碼用例複製出來,供大家參考
//建立鏈接 var conn = new MySql.Data.MySqlClient.MySqlConnection(config_config); //簡單select var dt = conn.Query<userinfo>("select * from userinfo where UserName=@username", new { username = "花樣百出@sina.com" }); var dt1 = conn.Query<userinfo>("select * from userinfo where UserName=@username", new { username = "花樣百出@sina.com" }).Select(o => new { name = o.UserName }); //inner join & left join var dt2 = conn.Query<userinfo, userlogs, userlogDTO>( "select * from userinfo a " + "INNER JOIN userlogs b on a.Id=b.UserId " + "where a.userName=@username", (user, logs) => { return new userlogDTO { Id = user.Id, Name = user.UserName, Content = logs.Content, Time = user.AddTime, }; }, splitOn: "Id,UserId", param: new { username = "test" }); //insert conn.Execute("insert into userinfo (username,addtime) values (@username,@addtime)", new { username = "zzltest", addtime = DateTime.Now }); //update conn.Execute("update userinfo set username=@newname where username=@oldname", new { oldname = "zzltest", newname = "zzlmodify" }); //delete conn.Execute("delete userinfo where username=@name", new { name = "test" });
本篇文章比較基礎,主要面向剛開始使用Dapper的同學!
感謝閱讀!