Надеюсь, это простой вопрос о том, что я не понимаю чего-то базового. Ниже приведены два оператора Linq из приложения, над которым я работаю.
EDMXModel.Classes.Period p1 = entities.Periods.DefaultIfEmpty(null).OrderByDescending(ap => ap.UID).First();
EDMXModel.Classes.Period p2 = entities.Periods.OrderByDescending(ap => ap.UID).DefaultIfEmpty(null).First();
entity.Periods - это набор, содержащий два объекта Period, каждый из которых имеет unique UID
.
В соответствии со всем, что я понимаю, p1 и p2 должны быть одинаковыми.
В моем окружении, однако, это не так.
p1 является верным (то есть он равен объекту Period с наибольшим UID в наборе).
p2, однако, неверен (т. Е. Он равен другому Периоду в наборе).
Есть идеи?