Wpis z mikrobloga

Próbuję przy pomocy LINQ w trakcie iteracji foreach posortować malejąco rekordy na liście, wziąć pierwszy rekord z góry a następnie go przyciąć substringiem jeśli ma powyżej 10 znaków. No i generalnie to mi wychodzi, tylko ten kod wywali się w przypadku rekordu krótszego niż dziesięć znaków. Myślę, że mógłbym zastosować tutaj metodę Math.Min, ale przez prawdopodobnie nieprawidłową składnię wywala mi błąd 'no accessible extension method 'Length' accepting first argument of type Message'

@chat.Messages.OrderByDescending(m=>m.DateOfSending).FirstOrDefault().TextMessage.ToString().Substring(0,10)
tu się wywala

chat.Messages.OrderByDescending(m=>m.DateOfSending).Select(m=>m.TextMessage.Substring(0,Math.Min(10,m.Length)))
#naukaprogramowania #csharp
  • 7