我是LINQ2SQL粉丝,不过,EF也是如此。在我的Web应用程序项目中,我在不同的函数中创建了各种LINQ2SQL查询。像:
Function A()
{
// LINQ2SQL QueryA accessing Database ABC
}
Function B()
{
// LINQ2SQL QueryB accessing Database ABC
}
Function C()
{
// LINQ2SQL QueryC accessing Database ABC
}
Function D()
{
// LINQ2SQL QueryD accessing Database ABC
}
Function E()
{
// LINQ2SQL QueryE accessing Database ABC
}
正如您所看到的,我的应用根本没有效率。我想通过只查询一次我的数据库然后从不同的函数中获取它来提高效率。对此更好的实施应该是什么?
谢谢!
答案 0 :(得分:0)
您需要在webrequest的整个生命周期内保持相同的上下文。 使用相同的上下文,将允许您从缓存中获益。它还允许您在webrequest的整个生命周期内保存为每个请求构建上下文所需的时间。
您还需要使用预先加载来加载数据。
EI。急切加载,正在使用“Include()”方法加载数据。 这将加载所有指定的相关数据。