1
我目前有一个类似于下面的类(省略错误检查)我应该重新使用表适配器实例吗?
目前这是如何将数据库封装成更容易使用的对象。
我想知道如果我要加载说50,000个订单,如果我应该创建表适配器一次,然后重新使用它们,而不是为每个订单创建一个新的表适配器?
我还没有看到这样做的任何真正的速度问题。但是最佳做法是不要每次都创建新的表格适配器?
如果是这样,有一个预先存在的模式来处理这个?
class Order
{
public int Id {get; private set;}
public string CustomerEmail { get; set; }
public SaleLocaion SalePoint { get; set; }
public Order(int orderId)
{
using (var ta = new OrdersTableAdapter())
{
using (var res = ta.GetDataById(orderId))
{
if (res.Count == 1)
{
var row = res.First();
Id = row.Id;
CustomerEmail = row.Email;
SalePoint = new SaleLocaion(row.SaleLocationId);
}
}
}
}
}
class SaleLocaion
{
public int Id {get; private set;}
public string Name { get; private set; }
public SaleLocaion(int locationId)
{
using (var ta = new SaleLocationAdapter())
{
using (var res = ta.GetDataById(locationId))
{
if (res.Count == 1)
{
var row = res.First();
Id = row.Id;
Name = row.Name;
}
}
}
}
}
谢谢,这是否意味着我可以放弃使用ta.GetDataById()? – james 2014-11-05 16:44:52
@james:如果返回一个'DataTable',是的。 – 2014-11-05 16:48:51