我目前在一个项目中,每个 .aspx 页面都由多个用户控件(.ascx 文件)组成。在某些情况下,单个页面的多个用户控件正在调用数据库以获取相同的数据。两个用户控件可能会为同一个客户对象调用数据库来执行他们各自情况所需的任务。毕竟,有些网页最终会调用相同的数据库 10 次或更多次,因为每个用户控件都需要数据来完成它正在做的事情。这似乎效率不高。
使用 ASP.NET Webforms 处理这种情况的最佳实践是什么?我们已经尝试缓存数据库调用,但感觉并不是解决问题的可靠方法,尽管它有助于提高性能。在使用 MVC 时,我可以传入一个包含特定页面所需的所有数据的强类型对象,并且只对数据进行一次查询。如何使用 WebForms 实现类似的功能?