PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Delegate System.Action não aceita argumentos '1'


Isenção de responsabilidade:me sinto muito mal por não conseguir encontrar nada isso explica por que isso não está funcionando. Se alguém souber; por favor, diga. O Google falhou aqui.

Claramente o compilador está escolhendo a sobrecarga errada para Each . Há dois na biblioteca, um que leva um Action<T> e outro que leva um Action<T, int> .

Se você não estava usando dynamic funcionaria bem (se eu tivesse que adivinhar); mas dynamic causa todos os tipos de problemas estranhos; mais você está usando o Mono.

Como o compilador insiste que você use a outra sobrecarga, a solução é bastante simples. Basta usá-lo!
DetectHistoryRebuild(migrationOperations).Each<dynamic>((o, i) => Generate(o));

Você pegou um parâmetro extra e não o usou. Não é o fim do mundo.

Você também pode instanciar explicitamente a Action para que o compilador não precise escolher:
DetectHistoryRebuild(migrationOperations).Each<dynamic>(new Action(o => Generate(o)));