{"record":{"id":"e2b58189ea3813bc","repo":"babalae/better-genshin-impact","slug":"markdown","errorCode":null,"errorMessage":"Markdown 图片不存在。","messagePattern":"Markdown 图片不存在。","errorType":"exception","errorClass":"FileNotFoundException","httpStatus":null,"severity":"error","filePath":"BetterGenshinImpact/View/Controls/Markdown/MarkdownImageLoader.cs","lineNumber":87,"sourceCode":"    public async Task<MarkdownImageResult> LoadAsync(Uri source, CancellationToken cancellationToken)\n    {\n        var cacheKey = GetCacheKey(source);\n        if (_cache.TryGetValue(cacheKey, out var weakReference) && weakReference.TryGetTarget(out var cachedResult))\n        {\n            return cachedResult;\n        }\n\n        byte[] bytes;\n        if (source.Scheme.Equals(\"data\", StringComparison.OrdinalIgnoreCase))\n        {\n            bytes = DecodeDataUri(source.OriginalString);\n        }\n        else if (source.IsFile)\n        {\n            var fileInfo = new FileInfo(source.LocalPath);\n            if (!fileInfo.Exists)\n            {\n                throw new FileNotFoundException(\"Markdown 图片不存在。\", source.LocalPath);\n            }\n\n            if (fileInfo.Length > MaxDownloadBytes)\n            {\n                throw new InvalidDataException($\"图片大小超过 {MaxDownloadBytes / 1024 / 1024} MB 限制。\");\n            }\n\n            bytes = await File.ReadAllBytesAsync(fileInfo.FullName, cancellationToken);\n        }\n        else if (source.Scheme.Equals(\"pack\", StringComparison.OrdinalIgnoreCase))\n        {\n            var resourceInfo = Application.GetResourceStream(source)\n                               ?? throw new FileNotFoundException(\"找不到 Markdown pack 资源。\", source.ToString());\n            await using var resourceStream = resourceInfo.Stream;\n            bytes = await ReadLimitedAsync(resourceStream, cancellationToken);\n        }\n        else if (source.Scheme is \"http\" or \"https\")\n        {","sourceCodeStart":69,"sourceCodeEnd":105,"githubUrl":"https://github.com/babalae/better-genshin-impact/blob/a7cb36712dcb409be610257d877fcea3597e9d6b/BetterGenshinImpact/View/Controls/Markdown/MarkdownImageLoader.cs#L69-L105","documentation":"Error \"Markdown 图片不存在。\" thrown in babalae/better-genshin-impact.","triggerScenarios":"Markdown 图片加载器处理 file 协议的图片 Uri 时，FileInfo 显示本地文件不存在，抛出 FileNotFoundException。","commonSituations":"Markdown 文档中引用的本地图片路径写错、图片被移动或删除。","solutions":["检查 Markdown 中引用的图片路径是否存在","确认相对路径相对于 Markdown 文件位置正确","重新下载包含图片的文档包"],"exampleFix":"修正 Markdown 中图片相对/绝对路径，确认图片文件存在于指定位置。","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a7cb36712dcb409be610257d877fcea3597e9d6b","analyzedAt":"2026-08-13T16:44:57.548Z","schemaVersion":2},"datasetVersion":"2026-08-13T19:17:28.613Z"}