У меня есть автозаполнение в моем приложении MVC 4, которое подключается к базе данных всех городов мира (так что вы можете себе представить, что это довольно большой). Он отлично работает на ПК, но когда я перехожу на сайт на своем смартфоне, загрузка занимает около 3 секунд, и производительность становится действительно вялой. Будет ли использовать Ajax или JSON быстрее? Я только программировал в MVC и сети сейчас уже месяц, поэтому, пожалуйста, со мной. Вот код (я использую код из Pluralsight учебники):jquery autocomplete действительно медленный на ASP.net MVC 4 mobile
Часть View + Javascript
<!--Searching through all the hotel locations -->
<p>Hotel Location (City): @Html.TextBoxFor(x => x.booking_instance.Location,
new { data_autocomplete = @Url.Action("QuickSearch", "Booking") })</p>
<script type="text/javascript">
$(document).ready(function() {
$(":input[data-autocomplete]").each(function() {
$(this).autocomplete({ source: $(this).attr("data-autocomplete") });
});
});
</script>
Контроллер
// this is my database of cities.
TE_TSQL1_HBOSDataContext _db = new TE_TSQL1_HBOSDataContext();
public ActionResult QuickSearch(string term)
{
var cities = _db.Cities
.Where (r => r.CityName.Contains(term))
.Select(r => new { label = (r.CityName + ", " + r.CountryName) });
return Json(cities, JsonRequestBehavior.AllowGet);
}
Отлично! Работает как шарм :). Знаете ли вы хороший ресурс, где я могу по-настоящему понять AJAX и JSON? (желательно в среде MVC, но если это не так!). Я знаю, что они должны делать, но у меня нет полного понимания того, когда и как их использовать. –