問題は次のとおりです。
-
SQLCLRは、TestFillRow内のデータアクセスを許可しません
-
TestFillRowがデータにアクセスしないように「見えます」が、コンパイラが「yield」ステートメントを使用してコードを変換する方法は、イテレータへの最初の.MoveNext()呼び出しまで実行を実際に延期することです。したがって、次のステートメント:
using (SqlConnection con = new SqlConnection("context connection=true"))
TestFillRow
内で実行されます ...これは違法です。
イールドリターンを使用しないでください;代わりに、結果全体をList<>
にロードします UD関数の最後にリストを返します。