/Gradebook/App_Start/MapperConfig.cs
C# | 49 lines | 43 code | 6 blank | 0 comment | 0 complexity | 5035e207a3245c87a12e1798bff86db7 MD5 | raw file
- using AutoMapper;
- using System.Linq;
-
- namespace Gradebook
- {
- public class MapperConfig
- {
- public static void Configure()
- {
- Mapper.Initialize(x => x.AddProfile<DtoProfile>());
- Mapper.AssertConfigurationIsValid();
- }
- }
-
- public class DtoProfile : Profile
- {
- protected override void Configure()
- {
- CreateMap<Model.Task, ViewModels.Task>()
- .ForMember(dm => dm.AssessmentName, mo => mo.MapFrom(sm => sm.Assessment.Name))
- .ForMember(dm => dm.TypeName, mo => mo.MapFrom(sm => sm.Type.Name))
- .ForMember(dm => dm.Average, mo => mo.Ignore())
- .ForMember(dm => dm.Status, mo => mo.Ignore());
-
- CreateMap<ViewModels.Task, Model.Task>()
- .ForMember(dm => dm.Assessment, mo => mo.Ignore())
- .ForMember(dm => dm.Code, mo => mo.Ignore())
- .ForMember(dm => dm.Grades, mo => mo.Ignore())
- .ForMember(dm => dm.Type, mo => mo.Ignore());
-
- CreateMap<Model.ClassCode, ViewModels.ClassSubject>()
- .ForMember(dm => dm.SubjectName, mo => mo.MapFrom(sm => sm.Subject.Name));
-
- CreateMap<Model.Grade, ViewModels.TaskResult>()
- .ForMember(dm => dm.Result, mo => mo.MapFrom(sm => sm.Value))
- .ForMember(dm => dm.TotalMarks, mo => mo.MapFrom(sm => sm.Task.TotalMarks))
- .ForMember(dm => dm.StudentName, mo => mo.MapFrom(sm => sm.Student.FullName))
- .ForMember(dm => dm.TaskTitle, mo => mo.MapFrom(sm => sm.Task.Title))
- .ForMember(dm => dm.TaskShortName, mo => mo.MapFrom(sm => sm.Task.ShortName))
- .ForMember(dm => dm.Rank, mo => mo.Ignore())
- .ForMember(dm => dm.Rate, mo => mo.Ignore());
-
- CreateMap<Model.Grade, ViewModels.Grade>();
- CreateMap<Model.TaskAssessment, ViewModels.TaskAssessment>();
- CreateMap<Model.TaskType, ViewModels.TaskType>();
- CreateMap<Model.Student, ViewModels.Student>();
- }
- }
- }