public async Task <M> TryReadCacheAsync(ModelPaths modelPaths, Action <IDataItem> dataItemsCallback) { Log.Debug($"Try reading cached model: {modelPaths}"); if (IsCacheOlderThanSave(modelPaths)) { Log.Debug("Cache is older than saved layout data, ignoring cache."); return(M.NoValue); } string cacheFilePath = GetCacheFilePath(modelPaths); return(await cacheSerializer.TryDeserializeAsync(cacheFilePath, dataItemsCallback)); }