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);
        }
Example #2
0
 public void SupportTranslateLang()
 {
     var method = new GetLanguagesForTranslate();
     var result = ApiClient.ExecuteWrap(method).Result;
 }
Example #3
0
 public void SupportTranslateLang()
 {
     var method = new GetLanguagesForTranslate();
     var result = ApiClient.ExecuteWrap(method).Result;
 }