public override LangFile Combine(TranslatedFile file) { var castedFile = (LangFile)file; if ((castedFile is null) || castedFile.category != this.category) { Log.Information("检测到不支持合并的文件。取消合并"); return(this); } this.Deserialize(); castedFile.Deserialize(); var resultMap = new Dictionary <string, string>(deserializedContent); foreach (var pair in castedFile.deserializedContent) { if (!resultMap.TryAdd(pair.Key, pair.Value)) { Log.Warning("检测到相同 key 的条目:{0} -> {1} | {2},选取 {1}", pair.Key, resultMap[pair.Key], pair.Value); } } return(new LangFile(category, resultMap) { relativePath = this.relativePath }); }
virtual public TranslatedFile Combine(TranslatedFile file) { Log.Information("检测到不支持合并的文件。取消合并"); return(this); }