我考虑到 SubSonic 3 最近的(极端)性能问题,我们正在寻求迁移 ORM,最好尽可能少地重写代码(主要是 Linq)。
所以我在看BLToolkit。我看到的 SubSonic 和 BLToolkit 之间的主要区别之一是 BLToolkit 总是需要一个using
声明。例如:
static void SingleTableTest()
{
using (var db = new NorthwindDB()) //This
{
var query =
from e in db.Employee
where e.EmployeeID > 5
orderby e.LastName, e.FirstName
select e;
foreach (var employee in query)
{
Console.WriteLine("{0} {1}, {2}", employee.EmployeeID, employee.LastName, employee.FirstName);
}
}
}
这究竟是做什么的?当您创建数据库的新实例时,它是否会创建新连接?将其“包装”到静态类中以便我可以在任何地方进行操作是否合理var q=from e in Database.Employee ...
?这在 Web 应用程序的上下文中会产生什么影响?