Рассматривали ли вы включение аккордеона в PartialView? Затем вы помещаете свой код в PartialView и далеко от главной страницы.
Также вы можете иметь базовый контроллер, который может установить ViewData для вас, так что теперь он в одном месте.
Редактировать
Это так же, как и любой другой базовый класс. Ваш контроллер наследует от Controller
, поэтому ваш базовый класс должен будет сделать то же самое;
using System.Web.Mvc;
namespace MyAppControllers
{
public class ControllerBase : Controller
{
protected override void Execute(System.Web.Routing.RequestContext requestContext)
{
ViewData["ApplicationName"] = CacheHelper.Get().Name;
base.Execute(requestContext);
}
}
}
Теперь установите ваш класс контроллера на наследование от класса ControllerBase;
public class HomeController : ControllerBase
Я также реализовал CacheHelper, но вы, очевидно, можете использовать свой собственный вариант хранения текущего значения.