sql >> Database >  >> RDS >> PostgreSQL

System.Action delegeren accepteert geen `1'-argumenten

Disclaimer:ik voel me erg slecht dat ik niets kan vinden dat verklaart waarom dit niet werkt. Als iemand weet; vertel me alsjeblieft. Google heeft hier gefaald.

Het is duidelijk dat de compiler de verkeerde overbelasting kiest voor Each . Er zijn er twee in de bibliotheek, een die een Action<T> . uitvoert en een andere die een Action<T, int> . uitvoert .

Als u dynamic niet gebruikte het zou goed werken (als ik moest raden); maar dynamic veroorzaakt allerlei rare problemen; plus je gebruikt Mono.

Omdat de compiler erop staat dat je de andere overbelasting gebruikt, is de oplossing eenvoudig genoeg. Gebruik het gewoon!

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

U heeft een extra parameter genomen en deze niet gebruikt. Het is niet het einde van de wereld.

Je zou ook gewoon expliciet de Action kunnen instantiëren zodat de compiler niet hoeft te kiezen:

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


  1. hoe je een hogere trend krijgt met avg mysql

  2. Oracle PL/SQL Bulk Collect met uitzonderingen opslaan Voorbeeld

  3. Realtime unidirectionele synchronisatie van sql-server naar een andere gegevensopslag

  4. Kan Sqlalchemy goed werken met meerdere bijgevoegde SQLite-databasebestanden?