private static bool AddImport(JObject wordJO, JObject meanJO, JObject linkJO) { var wMap = new Dictionary <int, int>(); var mMap = new Dictionary <int, int>(); int tmp; var w = new DBWord(); foreach (var jp in wordJO) { if (words.TryGetValue(w.Letters = jp.Key.ToLower(), out tmp)) { wMap.Add(w.Id = jp.Value.ToInt(), tmp); } else { db.Insert(w); wMap.Add(jp.Value.ToInt(), w.Id); words.Add(w.Letters, w.Id); eles.Add(w.ToStat()); WrongCount += w.wrong + 1; } } var m = new DBMeaning(); foreach (var jp in meanJO) { if (means.TryGetValue(m.Meaning = jp.Key, out tmp)) { mMap.Add(m.Id = jp.Value.ToInt(), tmp); } else { db.Insert(m); mMap.Add(jp.Value.ToInt(), m.Id); means.Add(m.Meaning, m.Id); eles.Add(m.ToStat()); WrongCount += m.wrong + 1; } } var t = new DBTranslation(); foreach (var jp in linkJO) { t.Wid = wMap[jp.Key.ToInt()]; foreach (var ji in jp.Value as JArray) { t.Mid = mMap[ji.ToInt()]; if (!e2c.Contains(t.Wid, t.Mid)) { e2c.Add(t.Wid, t.Mid); c2e.Add(t.Mid, t.Wid); db.Insert(t); } } } updTimeAll = updTimeDetail = DateTime.Now.Ticks; return(true); }
private static bool AddImport(JObject wordJO, JObject meanJO, JObject linkJO) { var wMap = new Dictionary<int, int>(); var mMap = new Dictionary<int, int>(); int tmp; var w = new DBWord(); foreach (var jp in wordJO) { if (words.TryGetValue(w.Letters = jp.Key.ToLower(), out tmp)) wMap.Add(w.Id = jp.Value.ToInt(), tmp); else { db.Insert(w); wMap.Add(jp.Value.ToInt(), w.Id); words.Add(w.Letters, w.Id); eles.Add(w.ToStat()); WrongCount += w.wrong + 1; } } var m = new DBMeaning(); foreach (var jp in meanJO) { if (means.TryGetValue(m.Meaning = jp.Key, out tmp)) mMap.Add(m.Id = jp.Value.ToInt(), tmp); else { db.Insert(m); mMap.Add(jp.Value.ToInt(), m.Id); means.Add(m.Meaning, m.Id); eles.Add(m.ToStat()); WrongCount += m.wrong + 1; } } var t = new DBTranslation(); foreach (var jp in linkJO) { t.Wid = wMap[jp.Key.ToInt()]; foreach (var ji in jp.Value as JArray) { t.Mid = mMap[ji.ToInt()]; if (!e2c.Contains(t.Wid, t.Mid)) { e2c.Add(t.Wid, t.Mid); c2e.Add(t.Mid, t.Wid); db.Insert(t); } } } updTimeAll = updTimeDetail = DateTime.Now.Ticks; return true; }