Как отсортировать список таким образом, чтобы строка списка совпадала с первой строкой. Предположим, если у меня естьСортировка списка в C#
"vishal pandey"
в строке, то элемент согласования списка «Вишал Пандей» приходит первым, то он должен показать результат пункта, содержащего «Вишал» и пункт, содержащий «Пандей.В»
Это не можно мне перенести данные в таком порядке из базы данных в настоящее время я получаю список как этого
var matchedProjects = (from project in unitOfWork.ProjectRepository.All()
where project.IsActive
&& project is Project
&& (
queryList.Contains(project.Name)
|| project.Name.StartsWith(query)
|| project.Name.Contains(query)
|| project.Name.EndsWith(query)
|| project.ProjectAddress.City.Name.StartsWith(query)
|| project.ProjectAddress.City.Name.Contains(query)
|| project.ProjectAddress.City.Name.EndsWith(query)
|| queryList.Contains(project.ProjectAddress.City.Name)
|| queryList.Contains(project.ProjectAddress.Address1)
)
select project as Project).Distinct().AsParallel().ToList();
-Спасибо
Как вы сказали, что такое «предмет»? a «Список» и «Список <>» пользовательского объекта? какое поле вы хотите сравнить? уточните больше, пожалуйста, –
Franck
@Franck no его список объектов (Model) –
вы должны реализовать метод, реализующий частично решение @Sergey в классе 'Project', который получит запрос и проверит все свойства, которые вы хотите, и посчитайте совпадения. Затем вы просто выполняете 'var listOfProjectThatMatch = unitOfWork.ProjectRepository.All(). ToList(). Где (p => p.GetMatchesQuantity (" vishal pandey ")> 0) .ToList()' то с этим списком отфильтровывают вас может заказывать с использованием количества совпадений снова или что-либо еще, что вы хотите отсортировать по – Franck