Здравствуйте.
Была такая проблемма: необходимо в пределенную область вывести из БД 10 рандомных записей (партнеров). С этим я справился. Но!
Как сделать так, чтобы список этих партнеров загружался
ОДИН раз, непосредственно при загрузке страницы, а потом оставался неизменным, то есть несмотря по какой ссылке перейдет пользователь, этот спикок отображался в том же виде и заново не загружался из базы? Я пробовал делать через ViewBag и RenderAction, но все равно: при переходе по любой ссылке список постоянно меняется.
Модель:
public class Partner
{
public int id { get; set; }
public string name { get; set; }
public string value { get; set; }
}
Контроллер:
public class HomeController : Controller
{
MarketingEntities storeDB = new MarketingEntities();
public ActionResult Index()
{
//ViewBag.Part = storeDB.partners.OrderBy(a => Guid.NewGuid()).Take(10);
var query = storeDB.mainpage.First();
return View(query);
}
public ActionResult GetPartnerList()
{
var query = storeDB.partners.OrderBy(a => Guid.NewGuid()).Take(10);
return PartialView(query);
}
public ActionResult About()
{
var query = storeDB.contactpage.First();
return View(query);
}
...
Представление:
@model IEnumerable<Marketing.Models.Partner>
@foreach (var a in Model)
{ <li class="first"><a href="#">@a.name</a></li> }
_layout:
<h3>Наши партнеры</h3>
<div class="bg1">
<ul>
@{Html.RenderAction("GetPartnerList");}
</ul>
</div>