/// <summary> /// Clona a instancia. /// </summary> /// <returns></returns> public object Clone() { return(new QueryInfo { _id = _id, _hasRowVersion = this._hasRowVersion, _isSelectDistinct = this._isSelectDistinct, _ignoreRegisterUserInfo = this._ignoreRegisterUserInfo, _storedProcedureName = this._storedProcedureName != null ? (StoredProcedureName)this._storedProcedureName.Clone() : null, _storedProcedureProvider = this._storedProcedureProvider, _commandTimeout = this._commandTimeout, _isolationLevel = this._isolationLevel, _parameters = _parameters != null ? (QueryParameterCollection)_parameters.Clone() : null, _method = this._method, _projection = this._projection != null ? (Query.Projection) this._projection.Clone() : null, _executePredicate = this._executePredicate != null ? (Query.QueryExecutePredicate) this._executePredicate.Clone() : null, _entities = this._entities != null?this._entities.Select(f => (EntityInfo)f.Clone()).ToArray() : null, _joins = this._joins != null?this._joins.Select(f => (JoinInfo)f.Clone()).ToArray() : null, _groupby = this._groupby != null ? (GroupBy)this._groupby.Clone() : null, _having = this._having != null ? (ConditionalContainer)this._having.Clone() : null, _sort = this._sort != null ? (Sort)this._sort.Clone() : null, _whereClause = this._whereClause != null ? (ConditionalContainer)this._whereClause.Clone() : null, _takeParameters = this._takeParameters != null ? (TakeParameters)this._takeParameters.Clone() : null, _nestedQueries = this._nestedQueries != null ? (QueryInfo[])this._nestedQueries.Select(f => (QueryInfo)f.Clone()).ToArray() : null, _unions = _unions != null ? (UnionInfoCollection)_unions.Clone() : null, _executeObserver = this._executeObserver, _canUseCache = this._canUseCache, _providerName = this._providerName, _ignoreTypeSchema = this._ignoreTypeSchema }); }