using System.Collections.Generic; using System.Linq; namespace WxOrder.Framework.Commons.pinyin { public abstract class PinyinDict : IPinyinDict { public abstract Dictionary Mapping(); public string[] ToPinyin(string word) { var mappingResult = Mapping(); if (mappingResult == null) { return null; } if (mappingResult.TryGetValue(word, out var result)) { return result; } return null; } public List Words() { var mappingResult = Mapping(); if (mappingResult == null) { return null; } return mappingResult.Keys.Select(key => key).ToList(); } } }