private void UpdateExistingFactByFactType(int id, string factType, string factValue, DateTime factStartDate, DateTime factEndDate)
        {
            bool foundIt = false;

            // locate existing fact
            PersonFact fact = (from temp in Facts
                               where temp.FactType == factType
                               select temp).FirstOrDefault();

            if (fact == null)
            {
                fact = new PersonFact();

                fact.Person = this;
                fact.Id     = id;
            }
            else
            {
                foundIt = true;
            }

            fact.FactType  = factType;
            fact.FactValue = factValue;
            fact.StartDate = factStartDate;
            fact.EndDate   = factEndDate;

            if (foundIt == false)
            {
                Facts.Add(fact);
            }
        }
        public void AddNewFact(int id,
                               string factType,
                               string factValue,
                               DateTime factStartDate,
                               DateTime factEndDate)
        {
            var fact = new PersonFact();

            fact.Person = this;
            fact.Id     = id;

            fact.FactType  = factType;
            fact.FactValue = factValue;
            fact.StartDate = factStartDate;
            fact.EndDate   = factEndDate;

            Facts.Add(fact);
        }