/// <summary> /// Creates a new <see cref="CommunicationWayKind" /> instance from the provided model. /// </summary> /// <param name="model">The model coming from the API.</param> /// <returns>Returns the created communication way kind instance.</returns> private CommunicationWayKind GetCommunicationWayKind(Models.CommunicationWayKeys.CommunicationWayKey model) { // Initializes the communication way kind CommunicationWayKind communicationWayKind; // Creates the appriopriate instance switch (model.translationCode) { case "COMM_WAY_KEY_AUTOBOX": communicationWayKind = new AutoboxKind(); break; case "COMM_WAY_KEY_FAX": communicationWayKind = new FaxKind(); break; case "COMM_WAY_KEY_INVOICE_ADDRESS": communicationWayKind = new InvoiceAddressKind(); break; case "COMM_WAY_KEY_MOBILE": communicationWayKind = new MobileKind(); break; case "COMM_WAY_KEY_NEWSLETTER": communicationWayKind = new NewsletterKind(); break; case "COMM_WAY_KEY_PRIVAT": communicationWayKind = new PrivateKind(); break; case "COMM_WAY_KEY_WORK": communicationWayKind = new WorkKind(); break; default: case "COMM_WAY_KEY_EMPTY": return(null); } // Sets the communication way kind specific properties communicationWayKind.Id = model.id; communicationWayKind.CreationDateTime = string.IsNullOrWhiteSpace(model.create) ? (Nullable <DateTime>)null : DateTime.Parse(model.create); communicationWayKind.UpdateDateTime = string.IsNullOrWhiteSpace(model.update) ? (Nullable <DateTime>)null : DateTime.Parse(model.update); communicationWayKind.Name = model.name; // Returns the created communication way kind return(communicationWayKind); }
public override object ConvertTo(System.ComponentModel.ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, System.Type destinationType) { if ((value == null)) { return(null); } WorkKind valueCasted = ((WorkKind)(value)); if ((valueCasted == WorkKind.Maintenance)) { return("maintenance"); } if ((valueCasted == WorkKind.Inspection)) { return("inspection"); } if ((valueCasted == WorkKind.Other)) { return("other"); } if ((valueCasted == WorkKind.Construction)) { return("construction"); } if ((valueCasted == WorkKind.Service)) { return("service"); } if ((valueCasted == WorkKind.Meter)) { return("meter"); } if ((valueCasted == WorkKind.Reconnect)) { return("reconnect"); } if ((valueCasted == WorkKind.Disconnect)) { return("disconnect"); } throw new ArgumentOutOfRangeException("value"); }