我有一个 MVC5 应用程序,它使用布局页面来控制页眉和页脚等。布局页面有一些由数据库驱动的部分,例如导航栏。我不确定在哪里拨打这些电话的最佳做法是。我可以想到两种方法,但都不是完美的
方法一:通过页面视图模型传入数据。不喜欢这种方法,我的主页控制器应该只关心主页内容,而不是布局。对于每个视图都必须重复此操作。
方法 2:Ajax 到 WebAPI 控制器。有点倾向于这个,虽然我认为这意味着失去像 @URL 和 @HTML 这样用于创建链接和呈现自定义内容的东西。
编辑:虽然另一种方法方法3:在开始时将信息加载到缓存中。由于这不是在初始设置后经常更改的信息,并且此代码显示在每个页面上,因此无论如何都需要缓存。