/// <summary> /// Initializes a new instance of the <see cref="MnStudentCEISProgramAssociation" /> class. /// </summary> /// <param name="Id">Id (required).</param> /// <param name="BeginDate">The month, day, and year on which the Student first received services. (required).</param> /// <param name="EducationOrganizationReference">EducationOrganizationReference (required).</param> /// <param name="ProgramReference">ProgramReference (required).</param> /// <param name="StudentReference">StudentReference (required).</param> /// <param name="EndDate">The month, day, and year on which the Student exited the Program or stopped receiving services..</param> /// <param name="ReasonExitedDescriptor">The reason the child left the Program within a school or district..</param> /// <param name="ServedOutsideOfRegularSession">Indicates whether the Student received services during the summer session or between sessions..</param> /// <param name="Etag">A unique system-generated value that identifies the version of the resource..</param> public MnStudentCEISProgramAssociation(string Id = default(string), DateTime?BeginDate = default(DateTime?), EdFiEducationOrganizationReference EducationOrganizationReference = default(EdFiEducationOrganizationReference), EdFiProgramReference ProgramReference = default(EdFiProgramReference), EdFiStudentReference StudentReference = default(EdFiStudentReference), DateTime?EndDate = default(DateTime?), string ReasonExitedDescriptor = default(string), bool?ServedOutsideOfRegularSession = default(bool?), string Etag = default(string)) { // to ensure "Id" is required (not null) if (Id == null) { throw new InvalidDataException("Id is a required property for MnStudentCEISProgramAssociation and cannot be null"); } else { this.Id = Id; } // to ensure "BeginDate" is required (not null) if (BeginDate == null) { throw new InvalidDataException("BeginDate is a required property for MnStudentCEISProgramAssociation and cannot be null"); } else { this.BeginDate = BeginDate; } // to ensure "EducationOrganizationReference" is required (not null) if (EducationOrganizationReference == null) { throw new InvalidDataException("EducationOrganizationReference is a required property for MnStudentCEISProgramAssociation and cannot be null"); } else { this.EducationOrganizationReference = EducationOrganizationReference; } // to ensure "ProgramReference" is required (not null) if (ProgramReference == null) { throw new InvalidDataException("ProgramReference is a required property for MnStudentCEISProgramAssociation and cannot be null"); } else { this.ProgramReference = ProgramReference; } // to ensure "StudentReference" is required (not null) if (StudentReference == null) { throw new InvalidDataException("StudentReference is a required property for MnStudentCEISProgramAssociation and cannot be null"); } else { this.StudentReference = StudentReference; } this.EndDate = EndDate; this.ReasonExitedDescriptor = ReasonExitedDescriptor; this.ServedOutsideOfRegularSession = ServedOutsideOfRegularSession; this.Etag = Etag; }