如何从视图中访问 ActiveRecord 模型的延迟加载属性?
我有一个属于类别模型的新闻模型,两者都标记为 Lazy=true
通过在我的控制器中执行以下操作,我可以在我的视图中访问延迟加载的属性
using (new SessionScope())
{
results = _service.FindAllNews(start, pageSize, new[] { Order.Asc("Id") });
foreach (var result in results)
{
var category = result.Category;
}
}
return View(results);
然后在我看来,我解析结果并使用以下内容显示类别标题
<%= Html.Encode(item.Category.Title) %>
显然,如果我不在控制器中引用该属性,则在尝试调用视图中的属性时会出现会话范围错误。
但这对我来说似乎是错误的。有没有更好的方法在到达视图之前初始化模型的延迟加载属性?我想我可以在模型中编写一个 Init 函数,但这似乎也很不稳定。