/// <summary> /// 将给定的用户 - 队伍关系实体添加至数据库中。 /// </summary> /// <param name="entity">要添加的用户 - 队伍关系实体对象。</param> /// <exception cref="ArgumentNullException"/> public void AddUserTeamRelationEntity(UserTeamRelationEntity entity) { if (entity == null) { throw new ArgumentNullException(nameof(entity)); } UserTeams.Add(entity); SaveChanges(); }
public static void GetUserTeamData(int userTeamId, List <int> userTeamIds, string userTeamUrl, UserTeams userTeamInsert, UserTeamClassicLeagues userTeamClassicLeaguesInsert, UserTeamH2hLeagues userTeamH2hLeaguesInsert, SqlConnection db) { try { userTeamUrl = string.Format(userTeamUrl, userTeamId); HttpClient client = new HttpClient(); JsonSerializer serializer = new JsonSerializer(); ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; using (Stream s = client.GetStreamAsync(userTeamUrl).Result) using (StreamReader sr = new StreamReader(s)) using (JsonReader reader = new JsonTextReader(sr)) { Globals.apiCalls += 1; Globals.apiUserTeamCalls += 1; // read the json from a stream // json size doesn't matter because only a small piece is read at a time from the HTTP request var userTeamData = serializer.Deserialize <UserTeam>(reader); UserTeam userTeam = userTeamData; //Load UserTeam data //string userTeamNameDB = ""; string userTeamName = ""; userTeamName = userTeam.name; Logger.Out(userTeamName + " (" + Convert.ToString(userTeamId) + ")"); //Logger.Out(""); UserTeamRepository userTeamRepository = new UserTeamRepository(); if (!userTeamIds.Contains(userTeam.id) && !userTeamInsert.Contains(userTeam)) { userTeamInsert.Add(userTeam); } //else //{ // userTeamNameDB = userTeamRepository.GetUserTeamName(userTeamId, db); // if (userTeamName != userTeamNameDB) // { // userTeamRepository.UpdateUserTeam(userTeam, db); // } //} GetUserTeamClassicLeagueJson(userTeamId, userTeamData, userTeamClassicLeaguesInsert, db); if (userTeam.leagues.h2h != null) { GetUserTeamH2hLeagueJson(userTeamId, userTeamData, userTeamH2hLeaguesInsert, db); } //if (userTeam.leagues.cup != null) //{ // GetUserTeamCupJson(userTeamId, userTeamData, db); //} } } catch (Exception ex) { Logger.Error("GetUserTeamData data exception (UserTeamId: " + userTeamId.ToString() + "): " + ex.Message); throw new Exception("GetUserTeamData data exception (UserTeamId: " + userTeamId.ToString() + "): " + ex.Message); } }
public static void GetUserTeamLeagueAndCupJson(int userTeamId, List <int> userTeamIds, string userTeamUrl, UserTeams userTeamsUpdateInsert, UserTeamCupMatches userTeamCupInsert, UserTeamClassicLeagues userTeamClassicLeaguesInsert, UserTeamH2hLeagues userTeamH2hLeaguesInsert, SqlConnection db) { try { var url = ""; url = string.Format(userTeamUrl, userTeamId); JsonSerializer serializer = new JsonSerializer() { Formatting = Formatting.None }; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; using (HttpClient client = new HttpClient()) using (Stream s = client.GetStreamAsync(url).Result) using (StreamReader sr = new StreamReader(s)) using (JsonReader reader = new JsonTextReader(sr)) { Globals.ApiCalls += 1; Globals.ApiUserTeamCalls += 1; // read the json from a stream // json size doesn't matter because only a small piece is read at a time from the HTTP request var userTeamData = serializer.Deserialize <UserTeam>(reader); if (userTeamData != null) { UserTeam userTeam = userTeamData; //Load UserTeam data string userTeamName = ""; //Set Global variable startedEvent Globals.StartGameweekId = userTeam.started_event; userTeamName = userTeam.name; Logger.Out(userTeamName); //Logger.Out(""); UserTeamRepository userTeamRepository = new UserTeamRepository(); if (!userTeamIds.Contains(userTeam.id)) { userTeamRepository.InsertUserTeam(userTeam, db); userTeamIds.Add(userTeam.id); Globals.UserTeamInsertCount += 1; } else { userTeamsUpdateInsert.Add(userTeam); //userTeamRepository.UpdateUserTeam(userTeamsInsert, db); } if (userTeamData.leagues.classic.Count != Globals.LeagueCountFromUserTeamClassicLeagueForUserTeamId) { GetUserTeamClassicLeagueJson(userTeamId, userTeamData, userTeamClassicLeaguesInsert, db); } if (userTeam.leagues.h2h != null) { GetUserTeamH2hLeagueJson(userTeamId, userTeamData, userTeamH2hLeaguesInsert, db); } if (userTeam.leagues.cup != null) { GetUserTeamCupJson(userTeamId, userTeamData, userTeamCupInsert, db); } } } } catch (Exception ex) { Logger.Error("GetUserTeamLeagueAndCupJson data exception (UserTeamId: " + userTeamId.ToString() + "): " + ex.Message); //throw new Exception("GetUserTeamLeagueAndCupJson data exception (UserTeamId: " + userTeamId.ToString() + "): " + ex.Message); } }