引数として別のパラメーターを渡す foreach ループの汎用メソッドを使用しようとしています。
以下の例では、さまざまなパラメーター (EmployeeDisplayOrder または EmployeeEnrollOrder) を渡したいと思います。
public void SaveEmployeeDisplayOrder(ICollection<Employee> employees)
{
//some code
foreach( var emp in employees)
{
UpdateSpecificEmployeeOrder(employee.id, e => e.EmployeeDisplayOrder);
}
}
public void SaveEmployeeEnrollOrder(ICollection<Employee> employees)
{
//some code
foreach( var emp in employees)
{
UpdateSpecificEmployeeOrder(employee.id, e => e.EmployeeEnrollOrder);
}
}
私はこのようなものが欲しいです
public void UpdateEmployeeOrders(ICollection<Employee> employee)
{
foreach( var emp in employees)
{
UpdateSpecificEmployeeOrder(employee.id, //generic property);
}
}
そして、この UpdateEmployeeOrders 汎用メソッドを SaveEmployeeDisplayOrder および SaveEmployeeEnrollOrder から呼び出します。
UpdateSpecificEmployeeOrder のメソッド シグネチャ
UpdateSpecificEmployeeOrder( int employeeid, params Expression<Func<Employee, object>>[] property)
これは可能ですか?