private async void LoadLans() { Dictionary <string, string> dic = null; var dir = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "AsNum.Xmj");; var path = Path.Combine(dir, "BingTranslateLang"); if (File.Exists(path)) { var bf = new BinaryFormatter(); using (var stm = File.OpenRead(path)) { dic = (Dictionary <string, string>)bf.Deserialize(stm); } } if (dic == null) { dic = new Dictionary <string, string>(); var method = new GetLanguagesForTranslate(); var lans = await ApiClient.ExecuteWrap(method); lans.ForEach(c => { try { var culture = CultureInfo.GetCultureInfo(c); dic.Set(c, string.Format("{0}\r\n{1}", culture.EnglishName, culture.DisplayName)); } catch { dic.Set(c, c); } }); if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } var bf = new BinaryFormatter(); using (var stm = File.Open(path, FileMode.OpenOrCreate)) { bf.Serialize(stm, dic); } } this.Langs = dic; this.NotifyOfPropertyChange(() => this.Langs); }
public void SupportTranslateLang() { var method = new GetLanguagesForTranslate(); var result = ApiClient.ExecuteWrap(method).Result; }