7k записей в раскрывающемся списке плохо для пользователя.Поскольку вы уже заказываете по описанию, я предполагаю, что ваши пользователи уже знают (хотя бы частично), что они хотят выбрать.Таким образом, предоставление полного списка на самом деле мешает пользователю.
Поскольку вы спрашиваете, что такое автозаполнение
, представьте поле ввода, в котором пользователь вводит несколько символов.Когда пользователь вводит то, что он хочет, запрос запускается.Этот строковый параметр будет использоваться для дальнейшего ограничения размера результирующего набора.
, поэтому ваша реализация запроса выглядит примерно так: псевдокод:
//passedParameter => "%foo%"
var temp = from x in ActiveRecordLinq.AsQueryable<Circuits>()
where x.User_Created == false
and x.Description like passedParameter
orderby x.Description
select x;
Фактическая реализация для обоих запросов:а также, если вы решите внедрить «% foo%» или «foo%» и т. д., это ваше решение.
Пользовательский опыт будет ограничен записью «foo» в поле ввода, а результаты будут получать толькорелевантный Circuits
, на котором пользователь выберет то, что он хочет.Если набор результатов все еще слишком велик, пользователь может добавить 'b' к уже введенному 'foo', создавая 'foob', где снова запускается запрос, возвращая еще более ограниченный набор результатов.
Когда вы набираетена Google, и он дает вам предложения на лету его реализация автозаполнения