O nome dos parâmetros não precisa corresponder às colunas, mas aos espaços reservados:
INSERT INTO testproc (mytext, mytext2) VALUES (?mytext, ?mytext2)
Suponho que se você usar parâmetros sem nome:
INSERT INTO testproc (mytext, mytext2) VALUES (?, ?)
a ordem importa.
Eu sempre usei a primeira opção, mas com:
command.Parameters.Add("?mytext2", "aaaaaaaaaaaaaaaaa")
command.Parameters.Add("?mytext", "bbbb")
Não sei se faz alguma diferença para AddWithValue()
Atualização:acabei de notar que seus parâmetros não têm um ponto de interrogação. Esse será o problema. Adicione um ponto de interrogação à sua consulta e aos seus parâmetros.