我目前有这段代码:
/// <summary>
/// This is an ineffecient method of getting a tenant by their id.
/// </summary>
/// <param name="id">int ID of the tenant to be selected</param>
/// <returns>Tenant with the specific ID, or null if not found.</returns>
public static Tenant GetTenantByID(int id){
RentalEaseDataSetTableAdapters.tblTenantTableAdapter adapter = new RentalEaseLogic.Database.RentalEaseDataSetTableAdapters.tblTenantTableAdapter();
RentalEaseDataSet ds = new RentalEaseDataSet();
adapter.Fill(ds.tblTenant);
DataRow[] rows = ds.tblTenant.Select("ID = " + id);
if (rows.Length > 0) {
return new Tenant(rows[0] as RentalEaseDataSet.tblTenantRow);
} else {
return null;
}
}
表现非常糟糕。每当有人想要一行时,它就会抓取并加载一张大表。必须有更好的方法。
如何从表格中选择一行,而无需填写整个表格并仍然保持强数据输入?
答案 0 :(得分:1)
有。将查询与您的TableAdapter
相关联。 TableAdapter Overview主要是
How to: Create TableAdapter Queries
然后用查询的行填充数据集。