Esempio n. 1
0
        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
            });
        }
Esempio n. 2
0
 virtual public TranslatedFile Combine(TranslatedFile file)
 {
     Log.Information("检测到不支持合并的文件。取消合并");
     return(this);
 }