【发布时间】:2009-02-06 19:24:24
【问题描述】:
我遇到了一个哲学编程问题。假设我有一个名为Employees 的类。员工拥有从数据表中设置的业务成员。为了填补这一点,我使用了一个方法,该方法接受一个员工类的实例,循环一个 dataTable,并设置传递给它的实例的成员。例如:
public void GetEmployees(objEmployee)
{
//the function I am calling returns a dataTable of all the employees in the db.
dim dt as DataTable = dbEmployees.GetEmployees();
foreach(DataRow drow in dt.rows)
{
objEmployee.Name = drow["Name"].ToString();
objEmployee.ID = drow["ID"].ToString();
}
}
然后我会在我的 UI 逻辑中调用这样的代码:
public void GetEmployees()
{
Employees employee = new Employees();
employee.GetEmployees(employee);
}
我的问题是,将我的类实例传递给一个方法并像我正在做的那样更改属性是否可以接受,或者通过这样的函数来实现它是否更面向对象:
public Employees GetEmployees()
{
Employees objEmployee = new Employees();
//the function I am calling returns a dataTable of all the employees in the db.
dim dt as DataTable = dbEmployees.GetEmployees();
foreach(DataRow drow in dt.rows)
{
objEmployee.Name = drow["Name"].ToString();
objEmployee.ID = drow["ID"].ToString();
}
return objEmployee
}
然后我会这样称呼它:
private void GetEmployees()
{
Employees employee;
employee = employee.GetEmployees();
}
使用函数比使用方法有什么好处吗?谢谢!
【问题讨论】: