public IEnumerable <ValidationResult> Validate(ValidationContext validationContext)
        {
            if (CaseSexType == SexType.詳)
            {
                yield return(new ValidationResult("個案性別 有誤。", new[] { "CaseSex" }));
            }

            if (CaseBirthday.HasValue && CaseBirthday >= DateTime.Today)
            {
                yield return(new ValidationResult("個案生日 有誤。", new[] { "CaseBirthday" }));
            }

            if (PsyHistoryType == Enum.MTC.PsyHistoryType.)
            {
                if (Diagnose == null || !Diagnose.Any())
                {
                    yield return(new ValidationResult("過往精神病史為「有」時,診斷 欄位是必要項。", new[] { "Diagnose" }));
                }
            }

            if (PsyHistoryType == Enum.MTC.PsyHistoryType.詳 && string.IsNullOrWhiteSpace(SymptomOther))
            {
                yield return(new ValidationResult("過往精神病史為「不詳」時,精神疾病症狀-其他 欄位是必要項。", new[] { "SymptomOther" }));
            }

            if (Id < 0)
            {
                yield return(new ValidationResult("查無此案。", new[] { "Id" }));
            }
            else if (Id == 0) //新增
            {
                if (MedicalPersonImage == null)
                {
                    yield return(new ValidationResult("醫護人員簽名圖檔 欄位是必要項。", new[] { "MedicalPersonImage" }));
                }
            }
        }