input: from typing import Callable
  
  def convert_python_to_csharp(python_code: Callable, function_name: str, params_types: List[str], return_type: str) -> str:
      """ Converts a given Python function to a C# method. The function returns the C# equivalent of the provided Python function.
      >>> convert_python_to_csharp(lambda x, y: x ** y, 'Power', ['int', 'int'], 'int')
      'public int Power(int x, int y)\n{\n    if (y == 0)\n    {\n        return 1;\n    }\n    else\n    {\n        return x * Power(x, y - 1);\n    }\n}'
      """
output:     csharp_code = f"public {return_type} {function_name}({', '.join([f'{t} {p}' for t, p in zip(params_types, python_code.__code__.co_varnames[:python_code.__code__.co_argcount])])})\n{{\n"
      if return_type != 'void':
          csharp_code += f"    return {python_code.__code__.co_names[0]}({', '.join(python_code.__code__.co_varnames[:python_code.__code__.co_argcount])});\n"
      else:
          csharp_code += f"    {python_code.__code__.co_names[0]}({', '.join(python_code.__code__.co_varnames[:python_code.__code__.co_argcount])});\n"
      csharp_code += "}"
      return csharp_code