OK, I found a solution.
Here is the definition of FillRow method, which I defined in the FillRowMethodName attribute of table valued CLR function CLRSplitString.
By the way, the columns are numbered by a zero based index method.
So "due to column 1" refers to second parameter which is InputString.
When I changed the ByVal to ByRef, I could successfully create the table valued CLR function (CLR sql split function) on MS SQL Server 2008 R2 database server.
Public Shared Sub FillRow(ByVal row As Object, ByRef InputString As String)
Eralper
Kodyaz.com