/// <summary> /// Get a exist collection. Returns null if not exists /// </summary> public CollectionPage Get(string name) { if (string.IsNullOrEmpty(name)) { throw new ArgumentNullException("name"); } var pages = _pager.GetSeqPages <CollectionPage>(1); // PageID 1 = Master Collection var col = pages.FirstOrDefault(x => x.CollectionName.Equals(name, StringComparison.InvariantCultureIgnoreCase)); return(col); }
/// <summary> /// Get a exist collection. Returns null if not exists /// </summary> public CollectionPage Get(string name) { if (string.IsNullOrEmpty(name)) { throw new ArgumentNullException("name"); } if (_cache.Header.FirstCollectionPageID == uint.MaxValue) { return(null); } var pages = _pager.GetSeqPages <CollectionPage>(_cache.Header.FirstCollectionPageID); var col = pages.FirstOrDefault(x => x.CollectionName.Equals(name, StringComparison.InvariantCultureIgnoreCase)); return(col); }
/// <summary> /// Read all data from a extended page with all subsequences pages if exits /// </summary> public byte[] ReadExtendData(uint extendPageID) { // read all extended pages and build byte array using (var buffer = new MemoryStream()) { foreach (var extendPage in _pager.GetSeqPages <ExtendPage>(extendPageID)) { buffer.Write(extendPage.Data, 0, extendPage.Data.Length); } return(buffer.ToArray()); } }