private static async Task <Member> GetMember() { using (var context = new Lobby.Models.CommonContext()) { return(await context.member.FromSqlRaw("SELECT * FROM member").FirstOrDefaultAsync()); } }
public static async Task <List <string> > GetBannedWord() { using (var context = new Lobby.Models.CommonContext()) { return(await context.banned_word.AsNoTracking().Select(x => x.word).ToListAsync()); } }
public static async Task UpdateMember(long member_no, long user_no) { using (var context = new Lobby.Models.CommonContext()) { await context.Database.ExecuteSqlRawAsync($"upDate member set user_no = {user_no} where member_no = {member_no}"); } }
public static async Task <Models.Member> GetMember(string player_id) { using (var context = new Lobby.Models.CommonContext()) { return(await context.member.Where(x => x.player_id == player_id).AsNoTracking().FirstOrDefaultAsync()); //return await context.member.FromSqlRaw("seLect * FROM member WHERE player_id =@player_id", new MySqlParameter("@player_id", player_id)).AsNoTracking().FirstOrDefaultAsync(); } }
public static async Task <Models.Member> AddMember(Models.Member member) { using (var context = new Lobby.Models.CommonContext()) { await context.member.AddAsync(member); await context.SaveChangesAsync(); return(member); } }
public static async Task <List <Models.SystemMail> > GetSystemMail(DateTime last_play_time) { try { using (var context = new Lobby.Models.CommonContext()) { return(await context.system_mail.Where(x => x.submit_time > last_play_time).AsNoTracking().ToListAsync()); } } catch (Exception e) { Log.Error(e, "GetSystemMail"); } return(null); }
private static async Task <List <Member> > GetMember2() { //string player_id = "' OR 1=1 -- "; //string player_id = "12 OR 1=1 -- "; string player_id = "123"; using (var context = new Lobby.Models.CommonContext()) { //return await context.member.FromSql($"SELECT * FROM member").ToListAsync(); //string query = $"SELECT * FROM member where player_id = '{player_id.GetEscapeString()}'"; //string query = $"SELECT * FROM member where player_id = {player_id.GetEscapeString()}"; //return await context.member.FromSql(query).ToListAsync(); return(await context.member.FromSqlRaw("SELECT * FROM member where player_id =@player_id", new MySqlParameter("@player_id", player_id)).ToListAsync()); } }
public static void test() { using (var context = new Lobby.Models.CommonContext()) { var ret = context.member .TagWith("This is my spatial query!") .Where(x => x.member_no == 1).ToList(); } var result = GetMember().Result; //TryInsert(); var result2 = GetMember2().Result; var last_member = MemberQuery.GetMember("G310f55c2d9ad4c068a80fb0bcdc3d96e").Result; }
private static async Task TryInsert() { int i = 24; bool saveFail; do { saveFail = false; try { // context 예외 발생시 재사용이 안되므로 다시 할당해야 한다 using (var context = new Lobby.Models.CommonContext()) { var member = new Member(); member.user_no = 2; member.player_id = $"12{i++}"; member.game_token = "aaaaaa"; member.last_play_time = DateTime.UtcNow; context.member.Add(member); await context.SaveChangesAsync(); Log.Information($"member_no {member.member_no}"); } } catch (DbUpdateException ex) { if (ex.InnerException != null && ((MySqlException)ex.InnerException).Number == 1062) { saveFail = true; } else { Log.Information(ex.ToString()); throw ex; } } catch (Exception ex) { Log.Information(ex.ToString()); throw ex; } }while (saveFail); }
public static async Task <ErrorCode> UpdateMember(long member_no, string user_name) { try { using (var context = new Lobby.Models.CommonContext()) { var user = await context.member.Where(x => x.member_no == member_no).FirstOrDefaultAsync(); if (user == null && user == default(Models.Member)) { Log.Error($"UpdateUser find member {member_no}"); return(ErrorCode.WrongParam); } user.user_name = user_name; await context.SaveChangesAsync(); } // sql injection //using (var context = new Lobby.Models.GameContext()) //{ // await context.Database.ExecuteSqlCommandAsync($"upDate user set user_name = {user_name} where user_no = {user_no}"); //} } catch (DbUpdateException ex) { if (ex.InnerException != null && ((MySqlException)ex.InnerException).Number == 1062) { return(ErrorCode.Duplicate); } else { Log.Error($"{ex.ToString()}"); return(ErrorCode.WrongParam); } } catch (Exception ex) { Log.Error($"{ex.ToString()}"); return(ErrorCode.WrongParam); } return(ErrorCode.Success); }
public static async Task <ErrorCode> UpdateMemberLastPlayTime(long member_no, DateTime currentTime) { try { using (var context = new Lobby.Models.CommonContext()) { var user = await context.member.Where(x => x.member_no == member_no).FirstOrDefaultAsync(); if (user == null && user == default(Models.Member)) { Log.Error($"UpdateUser find member {member_no}"); return(ErrorCode.WrongParam); } user.last_play_time = currentTime; await context.SaveChangesAsync(); } } catch (Exception ex) { Log.Error($"{ex.ToString()}"); return(ErrorCode.WrongParam); } return(ErrorCode.Success); }