我正在开发一个MVC网站,这是我公司做的第一个,我发现自己做的很多事情之一就是在控制器中创建选择列表,将它们放在viewdata中并在创建html.DropDownList时读取它们.对我来说,有些事情让我觉得有点臭.
有些页面可以重复列表(用户可以根据需要向酒店添加多个房间的酒店房间的电路板费率),目前我使用相同的选择列表,这是一个好的做法还是应该各有一个?
在前面的例子中,"room"是一个ascx,通过renderpartial或ajax调用通过jquery进行渲染.控制器传递选择列表的最佳方法是什么,以便ascx可以使用它,目前我添加到页面的viewdata,它将viewdata传递给renderpartial,但是然后在ajax调用上action方法也需要添加ascx的Viewdata选择列表,不确定这是最好的方法.
我有一个存储库,它保存这个"静态"数据并作为通用列表返回,因此每次控制器需要数据时它就会访问存储库以获取列表(除了电路板速率之外,还有一些事情,例如人员的标题,先生,夫人等等)我怀疑某种缓存会更好,因为数据很少发生变化.
有没有人在这些方面有任何建议?