sql >> Base de Datos >  >> RDS >> PostgreSQL

Delegate System.Action no toma argumentos '1'

Descargo de responsabilidad:me siento muy mal por no poder encontrar nada eso explica por qué esto no funciona. Si alguien sabe; Por favor dígame. Google ha fallado aquí.

Claramente, el compilador está seleccionando la sobrecarga incorrecta para Each . Hay dos en la biblioteca, uno que toma una Action<T> y otro que toma una Action<T, int> .

Si no estuvieras usando dynamic funcionaría bien (si tuviera que adivinar); pero dynamic causa todo tipo de problemas extraños; más estás usando Mono.

Dado que el compilador insiste en que use la otra sobrecarga, la solución es bastante simple. ¡Solo úsalo!

DetectHistoryRebuild(migrationOperations).Each<dynamic>((o, i) => Generate(o));

Tomaste un parámetro adicional y no lo usaste. No es el fin del mundo.

También podría simplemente instanciar explícitamente la Action para que el compilador no tenga que elegir:

DetectHistoryRebuild(migrationOperations).Each<dynamic>(new Action(o => Generate(o)));