Похоже, вы используете LINQ с Entity Framework.LINQ преобразуется в SQL, а вызов содержимого преобразуется в предложение LIKE WHERE, поэтому вы можете просто запустить SELECT * FROM Artists WHERE Name LIKE '%whatever%'
, чтобы получить представление о производительности.
Обратите внимание, что есть несколько вещей, которые вы можете сделать дляуменьшить влияние.Один вы можете ограничить количество результатов .Take(20)
.Также вы можете подождать, пока пользователь не наберет хотя бы пару символов, прежде чем запускать автозаполнение.Наконец, вы можете «уменьшить» вызов автоматического завершения, чтобы не вызывать автоматическое завершение каждый раз, когда они вводят символ, вместо того, чтобы ждать, пока они произойдут, скажем, полсекунды, не вводя дополнительный символ.