public new void AsCsvRow(CsvWriter writer, bool bulk = true) { base.AsCsvRow(writer, bulk); writer.WriteField(Title); writer.WriteField(String.Join(',', Grades)); writer.WriteField(CourseId); writer.WriteField(IMSClassCode); writer.WriteField(IMSClassType); writer.WriteField(Location); writer.WriteField(SchoolOrgId); writer.WriteField(String.Join(',', IMSClassAcademicSessions.Select(kas => kas.AcademicSessionId))); writer.WriteField(String.Join(',', Subjects)); writer.WriteField(String.Join(',', SubjectCodes)); writer.WriteField(String.Join(',', Periods)); writer.NextRecord(); }
public new void AsJson(JsonWriter writer, string baseUrl) { writer.WriteStartObject(); base.AsJson(writer, baseUrl); writer.WritePropertyName("title"); writer.WriteValue(Title); if (!String.IsNullOrEmpty(IMSClassCode)) { writer.WritePropertyName("classCode"); writer.WriteValue(IMSClassCode); } writer.WritePropertyName("classType"); writer.WriteValue(Enum.GetName(typeof(IMSClassType), IMSClassType)); if (!String.IsNullOrEmpty(Location)) { writer.WritePropertyName("location"); writer.WriteValue(Location); } if (Grades != null && Grades.Length > 0) { writer.WritePropertyName("grades"); writer.WriteStartArray(); foreach (var grade in Grades) { writer.WriteValue(grade); } writer.WriteEndArray(); } if (Subjects != null && Subjects.Length > 0) { writer.WritePropertyName("subjects"); writer.WriteStartArray(); foreach (var subject in Subjects) { writer.WriteValue(subject); } writer.WriteEndArray(); } if (Course != null) { writer.WritePropertyName("course"); Course.AsJsonReference(writer, baseUrl); } writer.WritePropertyName("resources"); writer.WriteStartArray(); if (Course != null && Course.Resources != null) { foreach (var resource in Course.Resources) { writer.WriteValue(resource); } } if (Resources != null) { foreach (var resource in Resources) { writer.WriteValue(resource); } } writer.WriteEndArray(); if (School != null) { writer.WritePropertyName("school"); School.AsJsonReference(writer, baseUrl); } writer.WritePropertyName("terms"); writer.WriteStartArray(); if (IMSClassAcademicSessions != null) { IMSClassAcademicSessions.ForEach(join => join.AcademicSession.AsJsonReference(writer, baseUrl)); } writer.WriteEndArray(); if (SubjectCodes != null && SubjectCodes.Length > 0) { writer.WritePropertyName("subjectCodes"); writer.WriteStartArray(); foreach (var subjectCode in SubjectCodes) { writer.WriteValue(subjectCode); } writer.WriteEndArray(); } if (Periods != null && Periods.Length > 0) { writer.WritePropertyName("periods"); writer.WriteStartArray(); foreach (var period in Periods) { writer.WriteValue(period); } writer.WriteEndArray(); } writer.WriteEndObject(); writer.Flush(); }