//GetTopBidForItem
        public BidCurrent GetTopBidForItem(long auction_id, int quantity, bool fromcache)
        {
            DataCacheObject dco    = new DataCacheObject(DataCacheType.RESOURCE, DataCacheRegions.BIDS, "GETTOPBIDFORITEM", new object[] { auction_id }, CachingExpirationTime.Hours_01);
            BidCurrent      result = CacheRepository.Get(dco) as BidCurrent;

            if (result != null && fromcache)
            {
                return(new BidCurrent(result));
            }
            dataContext.CommandTimeout = 600000;
            result = dataContext.spBid_WinningBid_Current(auction_id, quantity).FirstOrDefault();
            if (result != null)
            {
                dco.Data = result;
                CacheRepository.Add(dco);
            }
            return(result != null ? new BidCurrent(result) : null);
        }