public void LoadAllMetasOnStartUp() { if (!SampleClient.Properties.Settings.Default.LoadMetaOnStartUp) { return; } var cnn = new dbEntities(); var uri = new Uri(MetaUrlSport); ApiResponse response = new ApiResponse(); response = UtcHelper.GetDispatchMeta(uri, null).Result; if (response.Success) { List <Sport> sports = JsonConvert.DeserializeObject <List <Sport> >(response.Message); foreach (var sport in sports) { using (var dbContextTransaction = cnn.Database.BeginTransaction()) { var spParams = "EXECUTE PROCEDURE BET_SPORTS_I("; spParams += sport.SourceId + ","; spParams += sport.SportId + ","; spParams += 1 + ","; spParams += 0 + ")"; cnn.Database.ExecuteSqlCommand(spParams.Trim()); SerilogHelper.Debug(string.Format("META sport [{0}]", sport.SportId)); foreach (var sporttext in sport.Names) { spParams = "EXECUTE PROCEDURE BET_TRANSLATIONSIMPORT({0},{1},{2},{3},{4})"; var lang = sporttext.Lang; var mid = sport.SportId; var mtype = 1; var text = sporttext.Name; var superid = 0; cnn.Database.ExecuteSqlCommand(spParams.Trim(), lang, mid, mtype, text, superid); SerilogHelper.Debug(string.Format("TRANSLATION sport [{0}][{1}][{2}]", sport.SportId, sporttext.Lang, sporttext.Name)); } dbContextTransaction.Commit(); } } } uri = new Uri(MetaUrlCategory); response = UtcHelper.GetDispatchMeta(uri, null).Result; List <Category> categories = null; if (response.Success) { categories = JsonConvert.DeserializeObject <List <Category> >(response.Message); foreach (var category in categories) { using (var dbContextTransaction = cnn.Database.BeginTransaction()) { var spParams = "EXECUTE PROCEDURE BET_TOURNAMENTS_I("; spParams += category.SourceId + ","; spParams += category.SportId + ","; spParams += category.CategoryId + ","; spParams += category.CategoryId + ","; spParams += 1 + ","; spParams += 0 + ")"; cnn.Database.ExecuteSqlCommand(spParams.Trim()); SerilogHelper.Debug("META category"); foreach (var categorytext in category.Names) { spParams = "EXECUTE PROCEDURE BET_TRANSLATIONSIMPORT({0},{1},{2},{3},{4})"; var lang = categorytext.Lang; var mid = category.CategoryId; var mtype = 4; var text = categorytext.Name; var superid = 0; cnn.Database.ExecuteSqlCommand(spParams.Trim(), lang, mid, mtype, text, superid); SerilogHelper.Debug(string.Format("TRANSLATION category [{0}][{1}][{2}]", category.SportId, categorytext.Lang, categorytext.Name)); } dbContextTransaction.Commit(); } } } uri = new Uri(MetaUrlTournament); response = UtcHelper.GetDispatchMeta(uri, null).Result; if (response.Success) { List <Tournament> tournaments = JsonConvert.DeserializeObject <List <Tournament> >(response.Message); foreach (var tournament in tournaments) { using (var dbContextTransaction = cnn.Database.BeginTransaction()) { var sportid = categories.Where(g => g.CategoryId == tournament.CategoryId).FirstOrDefault()?.SportId ?? 0; if (sportid == 0) { continue; } var spParams = "EXECUTE PROCEDURE BET_TOURNAMENTS_I("; spParams += tournament.SourceId + ","; spParams += sportid + ","; spParams += tournament.TournamentId + ","; spParams += tournament.CategoryId + ","; spParams += 1 + ","; spParams += 0 + ")"; cnn.Database.ExecuteSqlCommand(spParams.Trim()); SerilogHelper.Debug("META tournament"); foreach (var tournamenttext in tournament.Names) { spParams = "EXECUTE PROCEDURE BET_TRANSLATIONSIMPORT({0},{1},{2},{3},{4})"; var lang = tournamenttext.Lang; var mid = tournament.TournamentId; var mtype = 5; var text = tournamenttext.Name; var superid = tournament.CategoryId; cnn.Database.ExecuteSqlCommand(spParams.Trim(), lang, mid, mtype, text, superid); SerilogHelper.Debug(string.Format("TRANSLATION tournaments [{0}][{1}][{2}]", sportid, tournamenttext.Lang, tournamenttext.Name)); } dbContextTransaction.Commit(); } } } uri = new Uri(MetaUrlMarket); response = UtcHelper.GetDispatchMeta(uri, null).Result; List <Market> markets = null; if (response.Success) { var HomeTeam = string.Empty; var DrawGame = string.Empty; var AwayTeam = string.Empty; var Over = string.Empty; var Under = string.Empty; var nextGoal = string.Empty; markets = JsonConvert.DeserializeObject <List <Market> >(response.Message); foreach (var market in markets) { using (var dbContextTransaction = cnn.Database.BeginTransaction()) { foreach (var marketitem in market.Names) { switch (marketitem.Lang) { case "tr": HomeTeam = "Evsahibi"; AwayTeam = "Deplasman"; nextGoal = "Sıradaki"; break; case "de": HomeTeam = "Heimteam"; AwayTeam = "Gastteam"; nextGoal = "Nächstes"; break; default: HomeTeam = "Hometeam"; AwayTeam = "Awayteam"; nextGoal = "Next"; break; } var spParams = "EXECUTE PROCEDURE BET_TRANSLATIONSIMPORT({0},{1},{2},{3},{4})"; var lang = marketitem.Lang; var mid = market.MarketId; var mtype = 2; var text = marketitem.Name.Replace("{$competitor1}", HomeTeam) .Replace("{$competitor2}", AwayTeam).Replace("{!goalnr}", nextGoal).Replace("{hcp}", ""); var superid = 0; cnn.Database.ExecuteSqlCommand(spParams.Trim(), lang, mid, mtype, text, superid); SerilogHelper.Debug(string.Format("TRANSLATION markets [{0}][{1}][{2}]", market.MarketId, marketitem.Lang, marketitem.Name)); } dbContextTransaction.Commit(); } } } uri = new Uri(MetaUrlOutcome); response = UtcHelper.GetDispatchMeta(uri, null).Result; if (response.Success) { var HomeTeam = "1"; var DrawGame = "X"; var AwayTeam = "2"; var Over = "+"; var Under = "-"; List <Outcome> outcomes = JsonConvert.DeserializeObject <List <Outcome> >(response.Message); foreach (var outcome in outcomes) { using (var dbContextTransaction = cnn.Database.BeginTransaction()) { //var markettext = markets.Where(g => g.MarketId == outcome.MarketId).FirstOrDefault().Names.Where(g => g.Lang == "en").FirstOrDefault().Name; foreach (var outcometext in outcome.Names) { //outcome translate for special bet list var spParams = "EXECUTE PROCEDURE BET_TRANSLATIONSIMPORT({0},{1},{2},{3},{4})"; var lang = outcometext.Lang; var mid = outcome.OutcomeId; var mtype = 9; var text = outcometext.Name.Replace("{$competitor1}", HomeTeam).Replace("{$competitor2}", AwayTeam). Replace("{total}", "").Replace("({hcp})", "").Replace("({-hcp})", ""); var superid = outcome.MarketId; cnn.Database.ExecuteSqlCommand(spParams.Trim(), lang, mid, mtype, text, superid); SerilogHelper.Debug(string.Format("TRANSLATION outcomes [{0}][{1}][{2}]", outcome.OutcomeId, outcometext.Lang, outcometext.Name)); //outcome translate for bet basket text /*spParams = "EXECUTE PROCEDURE BET_TRANSLATIONSIMPORT({0},{1},{2},{3},{4})"; * lang = outcometext.Lang; * mid = outcome.OutcomeId; * mtype = 3; * //text = outcometext.Name.Replace("{$competitor1}", HomeTeam).Replace("{$competitor2}", AwayTeam).Replace("{total}","").Replace("({+hcp})",""); * text = outcometext.Name; * superid = outcome.MarketId; * cnn.Database.ExecuteSqlCommand(spParams.Trim(), lang, mid, mtype, text, superid); */ } dbContextTransaction.Commit(); } } } }