public T Get(int index) { object o = base[index]; var aoi = (AbstractObjectInfo)o; try { if (aoi.IsNull()) { return(default(T)); } if (_returnInstance) { if (aoi.IsNative()) { return((T)aoi.GetObject()); } return((T)_instanceBuilder.BuildOneInstance((NonNativeObjectInfo)aoi)); } // No need to return Instance return the layer 2 representation o = aoi; return((T)o); } catch (Exception e) { throw new OdbRuntimeException(NDatabaseError.ErrorWhileGettingObjectFromListAtIndex.AddParameter(index), e); } }
private object GetCurrentInstance(NonNativeObjectInfo nnoi) { return(nnoi.GetObject() ?? _instanceBuilder.BuildOneInstance(nnoi, _storageEngine.GetSession().GetCache())); }