We would like to have your suggestion on these
Public Function MyMethod (ByVal CustomDataTable As DataTable ) As String
    columnQueryBuilder As new Stringbuilber
    totalQueryBuilder As new Stringbuilber
    Paramertrs as List (MyDBParameters)
    Parameters.Add(MyDBObject.CreateParamter("MyColumn1"),"SomeString" )
    For Each EachRow As DataRow In CustomDataTable.DefaultView.ToTable.Rows
        If columnQueryBuilder .Length > 0 Then
            sb.Append(", ")
        End If
        columnQueryBuilder .Append("'")
        columnQueryBuilder .Append(EachRow ("MyColumn").ToString)
        columnQueryBuilder .Append("'")
    Next
    totalQueryBuilder  = ("Select MyColumn3 from Mytable where MyColumn1=@MyColumn1 AND  MyColumn2 in ({0}) " , columnQueryBuilder.ToString )
    OutputString = MyDbHelper.ExecuteQuery(totalQueryBuilder.ToString ,Parameters.ToArray()  )
    Return outputString
End Function
So as you can see, taking one column of input datatable , taking all the values from that column and creating a query in 
columnbuilderQuery  = 'MyColumnValue1','MyColumnValue2'
and then I put it in query 
How to remove this string builder logic and put it in a parametrized way, so the vulnerability of sql injection is removed ?
