Представления не должны извлекать данные откуда-либо. Предполагается, что они будут использовать данные, которые были переданы им в виде модели представления из действия контроллера. Поэтому, если вам нужно использовать такие данные в представлении, правильный способ сделать это - определить модель представления:
public class MyViewModel
{
public string LicenseName { get; set; }
}
чтобы действие вашего контроллера заполняло его, где бы оно ни было необходимо (для лучшего разделения проблем вы можете использовать хранилище):
public ActionResult Index()
{
var model = new MyViewModel
{
LicenseName = HttpContext.Application["LICENSE_NAME"] as string
};
return View(model);
}
и, наконец, ваш строго типизированный вид отображает эту информацию для пользователя:
<div>@Model.LicenseName</div>
Это правильный шаблон MVC, и вот как это должно быть сделано.
Избегайте представлений, которые извлекают данные как вредные, потому что сегодня это состояние приложения, завтра - цикл foreach
, на следующей неделе - запрос LINQ, и вы сразу же будете писать запросы SQL в своих представлениях.