Я пытаюсь сортировать список по названию компании. Я пробовал следующий код, но это сортирует список по CompID, а не CoShort. Как мне изменить это для сортировки CoShort?'Сортировать по' игнорируется в запросе LINQ
Public Shared Function [SelectCompanyData](iElement() As Integer) As List(Of CompanyList)
Dim db As New EntryDataContext()
Dim q As IQueryable(Of CompanyList) = (From Act_Sub_Manfu_Link In db.Act_Sub_Manfu_Links _
Join Company In db.Companies _
On Act_Sub_Manfu_Link.CompID Equals Company.CompID _
Where iElement.Contains(Act_Sub_Manfu_Link.ACCN) _
And Company.In_Dir _
Select New CompanyList With { _
.CompID = Company.CompID, _
.InDir = Company.In_Dir, _
.CoShort = Company.CoShort _
}).Distinct
q.OrderBy(Function(c) c.CoShort)
Dim list As List(Of CompanyList) = q.ToList
Return list
End Function
Спасибо, это также wo RKS. Прежде всего, я попытался поставить orderby после предложения where, но это не сработало. Это потому, что я должен иметь порядок после отдельных? –
Вы имеете в виду, что у вас был 'Order By Company.CoShort' после предложения' Where'? Наличие 'OrderBy' после' Distinct' не имеет значения – djv
Да У меня был заказ By Company.CoShort между Where и Select, но при этом список, отсортированный по CompID. Btw, как вы получаете Где и т. Д. Появляться в сером? –