public IActionResult GetClassesForTeacher()

in apps/samplecode/education/rosterapi/EducationAccelerator.WebApi/EducationAccelerator.WebApi/Controllers/TeachersController.cs [80:116]


        public IActionResult GetClassesForTeacher([FromRoute] string id)
        {
            using (var client = _client)
            {
                var links = new List<LinkEntityData>() {
                    new LinkEntityData()
                    {
                        EntityName = "msk12_enrollment",
                        EntityType = typeof(Enrollment),
                        JoinMapping = "from='msk12_classid' to='msk12_classid'",
                        Alias = "enrollment",
                        Filters = new string[] { "role='teacher'", $"user='{{{id}}}'"}
                    }
                };

                var response = client.GetAsync(BuildUrl<IMSClass>(null, links));
                var decoded = response.Result.Content.ReadAsStringAsync().Result;
                var result = JsonConvert.DeserializeObject<ODataResponse<CrmEnrollment>>(decoded);

                if (result.Value == null)
                {
                    return NotFound();
                }

                var classes = result.Value.Select(x => new Enrollment(x));

                serializer = new OneRosterSerializer("classes");
                serializer.writer.WriteStartArray();
                foreach (var imsClass in classes)
                {
                    imsClass.AsJson(serializer.writer, BaseUrl());
                }
                serializer.writer.WriteEndArray();

                return JsonOk(FinishSerialization(), classes.Count());
            }
        }