public eMediosTransporte ObtenerMedioTransporte(string cMedioTransporte) { var eMedioTransporte = new eMediosTransporte(); if (cMedioTransporte.ToUpper() == "MARÍTIMO" || cMedioTransporte.ToUpper() == "MARiTIMO") { eMedioTransporte = eMediosTransporte.Maritimo; } else if (cMedioTransporte.ToUpper() == "TERRESTRE") { eMedioTransporte = eMediosTransporte.Terrestre; } else if (cMedioTransporte.ToUpper() == "AÉREO" || cMedioTransporte.ToUpper() == "AEREO") { eMedioTransporte = eMediosTransporte.Aereo; } return(eMedioTransporte); }
/// <summary> /// Método para crear la instancia de la clase que calculará el costo de envío con base al medio de transporte que se tenga. /// </summary> /// <param name="eMedioTransporte">Medio de transporte.</param> /// <returns>Retorna la instancia de la clase correspondiente de tipo ICalculadorCostoEnvioMedioTransporte.</returns> public ICalculadorCostoEnvioMedioTransporte CrearInstancia(eMediosTransporte eMedioTransporte) { ICalculadorCostoEnvioMedioTransporte calculadorCostoEnvioMedioTransporte = null; switch (eMedioTransporte) { case eMediosTransporte.Aereo: calculadorCostoEnvioMedioTransporte = creadorInstanciaFabricaGenerica.CrearInstancia <ICalculadorCostoEnvioMedioTransporte>("CalculadorCostoEnvioAereoStrategy"); break; case eMediosTransporte.Maritimo: calculadorCostoEnvioMedioTransporte = creadorInstanciaFabricaGenerica.CrearInstancia <ICalculadorCostoEnvioMedioTransporte>("CalculadorCostoEnvioMaritimoStrategy"); break; case eMediosTransporte.Terrestre: calculadorCostoEnvioMedioTransporte = creadorInstanciaFabricaGenerica.CrearInstancia <ICalculadorCostoEnvioMedioTransporte>("CalculadorCostoEnvioTerrestreStrategy"); break; } return(calculadorCostoEnvioMedioTransporte); }