ternary operator a nullable datetime

0

kod ktory działa

CreateMap<Foo, Bar>()
                .ForMember(dest => dest.Date, opt => opt.MapFrom(src => src.Date== null ? (System.DateTime?)null : src.Date.Value.ToDateTime()));

kod który sie nie kompiluje

CreateMap<Foo, Bar>()
                .ForMember(dest => dest.Date, opt => opt.MapFrom(src => src.Date== null ? null : src.Date.Value.ToDateTime()));

pytanie, dlaczego trzeba rzutowac bezposrednio na typ DateTime?

rozwiazanie problemu znalazlem tutaj https://stackoverflow.com/questions/48551696/automapper-map-to-nullable-datetime-property jednak bez zadnych wyjasnien :(

1

Która wersja C#? W C# 9 dodali target-typed ternary operator, wcześniej konieczne były takie rzutowania z nulla.

0

@fasadin:
Btw, a po co w ogóle co takie coś robić? Skoro typy się zgadzają i nazwa property? Czy coś źle czytam?

1 użytkowników online, w tym zalogowanych: 0, gości: 1