Func delegate con variable de referencia

public object MethodName(ref float y) { //method } 

¿Cómo se define un delegado de Func para este método?

Func no puede hacerlo, pero puede definir un delegate personalizado para él:

 public delegate object MethodNameDelegate(ref float y); 

Ejemplo de uso:

 public object MethodWithRefFloat(ref float y) { return null; } public void MethodCallThroughDelegate() { MethodNameDelegate myDelegate = MethodWithRefFloat; float y = 0; myDelegate(ref y); } 

En .NET 4+ también puede admitir tipos de ref esta manera …

 public delegate bool MyFuncExtension(string input, ref MyRefType refType);