Problemet er følgende:
-
SQLCLR tillader ikke nogen dataadgang inde i TestFillRow
-
Selvom det "ser ud", som om din TestFillRow ikke har adgang til data, er den måde, compileren oversætter kode med "yield"-sætninger, ved faktisk at udskyde dens eksekvering indtil det første .MoveNext()-kald til iteratoren. Derfor følgende udtalelse:
using (SqlConnection con = new SqlConnection("context connection=true"))
bliver udført inde i
TestFillRow
... hvilket er ulovligt.
Brug ikke afkastafkast; indlæs i stedet hele resultatet til en List<>
og returner listen i slutningen af UD-funktionen.