internal static List<Catalog> GetCatalogsByProductID(int productID, int portalID, int languageID)
{
List<Catalog> colCatalogs = null;
Catalog cataloge = null;
using (SqlConnection sqlConnection = new SqlConnection(CMSCoreBase.CMSCoreConnectionString))
{
SqlCommand sqlCommand = new SqlCommand(SN_CATALOG_GET_BY_PRODUCT_ID, sqlConnection);
sqlCommand.CommandType = System.Data.CommandType.StoredProcedure;
SqlParameter sqlParameter = null;
sqlParameter = new SqlParameter(ProductDataMapper.PN_PRODUCT_ID, System.Data.SqlDbType.Int);
sqlParameter.Direction = System.Data.ParameterDirection.Input;
sqlParameter.Value = productID;
sqlCommand.Parameters.Add(sqlParameter);
sqlParameter = new SqlParameter(ECommerceDataMapperBase.PN_ECO_LAN_LAN_ID, System.Data.SqlDbType.Int);
sqlParameter.Direction = System.Data.ParameterDirection.Input;
sqlParameter.Value = languageID;
sqlCommand.Parameters.Add(sqlParameter);
sqlParameter = new SqlParameter(ECommerceDataMapperBase.PN_MODULE_ID, System.Data.SqlDbType.Int);
sqlParameter.Direction = System.Data.ParameterDirection.Input;
sqlParameter.Value = (int)CMSEnums.ECommerceModule.Catalog;
sqlCommand.Parameters.Add(sqlParameter);
sqlParameter = new SqlParameter(PN_CATALOG_PORTAL_ID, System.Data.SqlDbType.Int);
sqlParameter.Direction = System.Data.ParameterDirection.Input;
sqlParameter.Value = portalID;
sqlCommand.Parameters.Add(sqlParameter);
sqlCommand.Connection.Open();
using (SqlDataReader sqlDataReader = sqlCommand.ExecuteReader(System.Data.CommandBehavior.CloseConnection))
{
colCatalogs = new List<Catalog>();
while (sqlDataReader.Read())
{
cataloge = GetCatalog(colCatalogs, sqlDataReader);
FillFromReaderByProduct(cataloge, sqlDataReader);
}
sqlDataReader.Close();
sqlCommand.Connection.Close();
}
}
return colCatalogs;
}