public static T Find(long id) { if (id == null) { return(null); } ActiveRecordMap activeRecordMap = ActiveRecord <T> .GetMap(); string query = @"SELECT " + SqlBuilderServices.BuildSqlColumnList(activeRecordMap.ColumnList(true), activeRecordMap.TableName, SqlBuilderServices.ColumnListType.List) + " FROM " + activeRecordMap.TableName + " WHERE " + activeRecordMap.PrimaryKeyColumnName + " = @" + activeRecordMap.PrimaryKeyColumnName; SqlParameter[] parameters = new SqlParameter[] { new SqlParameter(activeRecordMap.PrimaryKeyColumnName , SqlBuilderServices.GetDBTypeFromSystemType(activeRecordMap.PrimaryKeyColumnMap.Property.PropertyType) , id) }; IDataReader dataReader = _activeRecordSession.DatabaseServices.ExecuteDataReader(query, parameters); return(ObjectRetrievalServices.RetrieveObject <T>(dataReader, activeRecordMap)); }
public static List <T> FindManyWithSql(String sqlQuery) { ActiveRecordMap activeRecordMap = ActiveRecord <T> .GetMap(); IDataReader dataReader = _activeRecordSession.DatabaseServices.ExecuteDataReader(sqlQuery); return(ObjectRetrievalServices.RetrieveObjects <T>(dataReader, activeRecordMap)); }
public static List <T> FindAll() { ActiveRecordMap activeRecordMap = ActiveRecord <T> .GetMap(); string query = @"SELECT " + SqlBuilderServices.BuildSqlColumnList(activeRecordMap.ColumnList(true), activeRecordMap.TableName, SqlBuilderServices.ColumnListType.List) + " FROM " + activeRecordMap.TableName; IDataReader dataReader = _activeRecordSession.DatabaseServices.ExecuteDataReader(query); return(ObjectRetrievalServices.RetrieveObjects <T>(dataReader, activeRecordMap)); }
public static T FindFirstWhere(String where, SqlParameter[] parameters) { ActiveRecordMap activeRecordMap = ActiveRecord <T> .GetMap(); string query = @"SELECT " + SqlBuilderServices.BuildSqlColumnList(activeRecordMap.ColumnList(true), activeRecordMap.TableName, SqlBuilderServices.ColumnListType.List) + " FROM " + activeRecordMap.TableName + " WHERE " + where; IDataReader dataReader = _activeRecordSession.DatabaseServices.ExecuteDataReader(query, parameters); return(ObjectRetrievalServices.RetrieveObject <T>(dataReader, activeRecordMap)); }
public void Refresh() { ActiveRecordMap activeRecordMap = ActiveRecord <T> .GetMap(); string query = @"SELECT " + SqlBuilderServices.BuildSqlColumnList(activeRecordMap.ColumnList(true), activeRecordMap.TableName, SqlBuilderServices.ColumnListType.List) + " FROM " + activeRecordMap.TableName + " WHERE " + activeRecordMap.PrimaryKeyColumnName + " = @" + activeRecordMap.PrimaryKeyColumnName; SqlParameter[] parameters = new SqlParameter[] { new SqlParameter(activeRecordMap.PrimaryKeyColumnName , SqlBuilderServices.GetDBTypeFromSystemType(activeRecordMap.PrimaryKeyColumnMap.Property.PropertyType) , this.Id) }; IDataReader dataReader = _activeRecordSession.DatabaseServices.ExecuteDataReader(query, parameters); ObjectRetrievalServices.RetrieveObject <T>(dataReader, activeRecordMap, true); }