public async Task <RawdataInfo> GetFreeRawdataInfoAsync(int rawLength) { Where w = new Where("IsFree", OperationType.Equal, true); w.StorageEngine = this.storageEngine; w.ParentSqoTypeInfo = this.GetSqoTypeInfo(); w.ParentType.Add(w.ParentSqoTypeInfo.Type); Where w1 = new Where("Length", OperationType.GreaterThanOrEqual, rawLength); w1.StorageEngine = storageEngine; w1.ParentSqoTypeInfo = this.GetSqoTypeInfo(); w1.ParentType.Add(w1.ParentSqoTypeInfo.Type); And and = new And(); and.Add(w, w1); List <int> oids = await and.GetOIDsAsync().ConfigureAwait(false); if (oids.Count > 0) { return(await this.GetRawdataInfoAsync(oids[0]).ConfigureAwait(false)); } return(null); }