The C# 3.0 and higher version provides the option for the user to specify the function or method as parameter using the Func delegate .
How to Pass Method or Function as Parameter in C# ?
Below is a sample code snippet demonstrating how to pass method as parameter in C# using Func delegate.
public class ACEmployee
{
public string GetEmployeeNameByID(int ID)
{
// Perform the logic
return string.Empty;
}
public int GetEmployeeIDByName(string Name)
{
// Perform the logic
return 1;
}
public bool ExecuteACMethod(Func<string, int> GetEmployeeNameByID)
{
int i = GetEmployeeIDByName("Abundantcode");
return true;
}
}
This is not a demo of the Func!!!
public bool ExecuteACMethod(Func GetEmployeeNameByID)
{
int i = GetEmployeeIDByName(“Abundantcode”);
Shouldn’t it be…
public bool ExecuteACMethod(Func getEmployeeNameByID)
{
int i = getEmployeeNameByID(“Abundantcode”);