public static void Update() { context.Update <User>(a => a.Id == 1, a => new User() { Name = a.Name, Age = a.Age + 100, Gender = Gender.Man, OpTime = DateTime.Now }); /* * UPDATE `Users` SET `Name`=`Users`.`Name`,`Age`=(`Users`.`Age` + 100),`Gender`=1,`OpTime`=NOW() WHERE `Users`.`Id` = 1 */ //批量更新 //给所有女性年轻 10 岁 context.Update <User>(a => a.Gender == Gender.Woman, a => new User() { Age = a.Age - 10, OpTime = DateTime.Now }); /* * UPDATE `Users` SET `Age`=(`Users`.`Age` - 10),`OpTime`=NOW() WHERE `Users`.`Gender` = 2 */ User user = new User(); user.Id = 1; user.Name = "lu"; user.Age = 28; user.Gender = Gender.Man; user.OpTime = DateTime.Now; context.Update(user); //会更新所有映射的字段 /* * String ?P_0 = 'lu'; * Gender ?P_1 = Man; * Int32 ?P_2 = 28; * Nullable<Int32> ?P_3 = NULL; * DateTime ?P_4 = '2016/8/26 18:18:36'; * Int32 ?P_5 = 1; * UPDATE `Users` SET `Name`=?P_0,`Gender`=?P_1,`Age`=?P_2,`CityId`=?P_3,`OpTime`=?P_4 WHERE `Users`.`Id` = ?P_5 */ /* * 支持只更新属性值已变的属性 */ context.TrackEntity(user); //在上下文中跟踪实体 user.Name = user.Name + "1"; context.Update(user); //这时只会更新被修改的字段 /* * String ?P_0 = 'lu1'; * Int32 ?P_1 = 1; * UPDATE `Users` SET `Name`=?P_0 WHERE `Users`.`Id` = ?P_1 */ ConsoleHelper.WriteLineAndReadKey(); }
public static void Update() { context.Update <User>(a => new User() { Name = a.Name, Age = a.Age + 100, Gender = Gender.Man, OpTime = DateTime.Now }, a => a.Id == 1); /* * UPDATE [Users] SET [Name]=[Users].[Name],[Age]=([Users].[Age] + 100),[Gender]=1,[OpTime]=DATETIME('NOW','LOCALTIME') WHERE [Users].[Id] = 1 */ //批量更新 //给所有女性年轻 10 岁 context.Update <User>(a => new User() { Age = a.Age - 10, OpTime = DateTime.Now }, a => a.Gender == Gender.Woman); /* * UPDATE [Users] SET [Age]=([Users].[Age] - 10),[OpTime]=DATETIME('NOW','LOCALTIME') WHERE [Users].[Gender] = 2 */ User user = new User(); user.Id = 1; user.Name = "lu"; user.Age = 28; user.Gender = Gender.Man; user.OpTime = DateTime.Now; context.Update(user); //会更新所有映射的字段 /* * String @P_0 = 'lu'; * Gender @P_1 = Man; * Int32 @P_2 = 28; * Nullable<Int32> @P_3 = NULL; * DateTime @P_4 = '2016/8/6 22:05:02'; * Int32 @P_5 = 1; * UPDATE [Users] SET [Name]=@P_0,[Gender]=@P_1,[Age]=@P_2,[CityId]=@P_3,[OpTime]=@P_4 WHERE [Users].[Id] = @P_5 */ /* * 支持只更新属性值已变的属性 */ context.TrackEntity(user); //在上下文中跟踪实体 user.Name = user.Name + "1"; context.Update(user); //这时只会更新被修改的字段 /* * String @P_0 = 'lu1'; * Int32 @P_1 = 1; * UPDATE [Users] SET [Name]=@P_0 WHERE [Users].[Id] = @P_1 */ ConsoleHelper.WriteLineAndReadKey(); }