Кто-нибудь сталкивался с чем-то подобным раньше? По сути, у меня есть действие на контроллере, который просто запрашивает базу данных через шаблон хранилища, добавляет некоторые данные в ViewData и затем возвращает View. Но по какой-то причине это действие вызывается 4 раза за запрос .
Само действие всего около 10 строк:
public ActionResult Details(int id, string slug) {
Product p = productRepository.GetProduct(id);
IEnumerable<Image> imgs = productRepository.GetImages(p.ProductId);
if (imgs.Count() > 0) {
ViewData["MainImage"] = imgs.First();
ViewData["Images"] = imgs;
}
Brand brand = productRepository.GetBrand(p.ProductId);
ViewData["Brand"] = brand;
var categories = productRepository.GetCategories(p.ProductId, true);
ViewData["ProductCategories"] = categories;
return View("Details", p);
}
Кроме того, маршруты, определенные в моем Global.asax, следующие:
routes.MapRoute(
"SlugsAfterId",
"{controller}.mvc/{action}/{id}/{slug}",
new { controller = "Products", action = "Browse", id = "" }
);
// The default route that comes with ASP.NET MVC
routes.MapRoute(
"Default", // Route name
"{controller}.mvc/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);
Может кто-нибудь пролить свет на это, пожалуйста? Я полностью в тупике.