public CharacterEntry Create(GameAccountEntry account, byte slot, string characterName, byte race, double scale, byte gender) { var entry = new CharacterEntry { AccountId = account.Id, Slot = slot, Name = characterName, Race = race, Scale = scale, Gender = gender, Class = 1, MapContextId = DefaultMapContextId, RunState = DefaultRunState, CoordX = DefaultCoordX, CoordY = DefaultCoordY, CoordZ = DefaultCoordZ, Rotation = 0 }; try { _charContext.CharacterEntries.Add(entry); _charContext.SaveChanges(); return(Get(entry.Id)); } catch (Exception e) { Logger.WriteLog(LogType.Error, "Error creating character:"); Logger.WriteLog(LogType.Error, e); return(null); } }
public void CreateOrUpdate(uint id, string name, string email) { var existingGameAccount = _charContext.GetWritable(_charContext.GameAccountEntries, id); if (existingGameAccount != null) { existingGameAccount.Name = name; existingGameAccount.Email = email; } else { var newEntry = new GameAccountEntry { Id = id, Name = name, Email = email }; _charContext.GameAccountEntries.Add(newEntry); _charContext.SaveChanges(); } }