Passar um parâmetro SQL para uma cláusula IN () usando conjuntos de dados digitados no .NET

Primeiras desculpas, pois há perguntas semelhantes neste site, mas nenhuma delas responde diretamente a esse problem

Estou usando conjuntos de dados digitados no VS 2010. Crio um TableAdapter em um conjunto de dados com uma consulta como:

SELECT * from Table WHERE ID IN(@IDs)

Agora se eu ligar:TableAdapter.Fill(MyDataTable,"1,2,3") ocorre um erro informando que o VS não pode converter 1,2,3 no tipo int. Justo

ntão, eu decido alterar o tipo de parâmetro (ou seja, @IDs) para string na coleção de parâmetros. Tente novamente - ainda com a mesma mensagem de erro.

Existe alguma maneira desse conjunto de dados digitado aceitar meu parâmetro "1,2,3"? No momento, eu tenho apenas alguns parâmetros para passar, então eu poderia facilmente criar 5 parâmetros e passá-los separadamente, mas e se houver centenas? Existe alguma maneira de chamar oFill() método com meu parâmetro separado por vírgula?

(sei que posso usar o SQL dinâmico para criar a instrução e executá-la, mas preferiria que houvesse outra maneira de manter meu conjunto de dados digitado para uso em, por exemplo, ReportViewer / bindingsources)

questionAnswers(8)

yourAnswerToTheQuestion