我们正在向ASP.NET MVC产品添加工具提示,我们从数据库中获取文本(从技术上讲,从数据的缓存副本中获取)。为此,我们创建了一个Html Helper方法:
<%=Html.Tooltip(Model.GetTooltipText(Tooltips.ClientPage.StartDateId))%>
GetTooltipText方法位于我们的BaseViewModel中,只是使用传入的Id从缓存中获取工具提示。
这会被视为糟糕的设计吗?我们还有其他选择吗?
谢谢!
答案 0 :(得分:1)
在一次点击中获取所有工具提示并将它们放入某种强类型集合(可能是Dictionary<id,string>
)可能更好一点,在服务层中缓存所有这些。
然后你可以将它放在ViewModel
中并将其传递给强类型视图。
在查看中,您只需根据唯一键访问通过模型收集的强类型广告?
即
<%: Model.Tooltips[SomeDateId] %>