Como posso corrigir esses erros de compilação?
-
19-08-2019 - |
Pergunta
for (int z = 0; z < alParmValues.Count; z++)
{
asd.Add((alParmValues[z].ToString().Split(',')));// asd is list<string>
def.Add(alMethSign[z].ToString().Substring(alMethSign[z].ToString().IndexOf('(') + 1, alMethSign[z].ToString().IndexOf(')') - (alMethSign[z].ToString().IndexOf('(') + 1)).Split(','));// def is list<string>
}
Estes são os erros que eu tenho quando eu compilar:
Error 7 The best overloaded method match for 'System.Collections.Generic.List<string>.Add(string)' has some invalid arguments
D:\HUTT\Code\HUTT\NUnitClasses\BaseGenerator.cs 1118 18 HUTT
Error 8 Argument '1': cannot convert from 'string[]' to 'string'
D:\HUTT\Code\HUTT\NUnitClasses\BaseGenerator.cs 1118 27 HUTT
Solução
O compilador está dizendo a você, que você não pode usar o método List.Add()
que espera um string
como entrada, porque você está entregando-o retorno de Split()
que retorna um string[]
. Para usar um string[]
como entrada, AddRange()
uso.
Outras dicas
Use AddRange em vez de Add.
Tente AddRange
String.Split retorna uma matriz de cadeias (string []) mas List.Add espera um parâmetro do tipo string.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow