using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.ComponentModel.DataAnnotations; using Sleis.Validation.Attribute; using System.Collections; namespace Sleis.Models { public class FacilityContact : BaseModel { public virtual FacilityContactModel Person { get; set; } public virtual List Contacts { get; set; } public FacilityContact() { //Person = new FacilityContactModel(); //Contacts = new List(); } public FacilityContact(bool isAgency) { if (isAgency) { Person = new AgencyFacilityContact(); Contacts = new List(); Contacts.Add(new AgencyFacilityContactMethod()); } else { Person = new PublicFacilityContactModel(); Contacts = new List(); Contacts.Add(new PublicFacilityContactMethod()); } } public FacilityContact(FacilityContactModel person) : this() { Person = person; } public virtual bool HasData { get { return Person != null && Person.Id > 0; } } public virtual int Id { get { return (HasData) ? Person.Id : 0; } } public override void SetContext(string parentContext) { Person.SetContext(parentContext); foreach (BaseIdentityModel c in Contacts) { c.SetContext(Person.ValidationContxt); } //Contacts.ForEach(x => x.SetContext(Person.ValidationContxt)); ValidationContxt = Person.ValidationContxt; } } }