DUVIDA COM ERRO ESTRANHO EM SPLIT
Sempre utilizei isso em meus projetos:
SAT_NAG.EnviadoVenda = e.Argument.Split([Ô]|[Ô])(0)
Nos novos projetos utilizando o mesmo framework não aceita, observe a imagem.
O VB me da a correção e que me serve também, mas porque não aceita da forma anterior que é mais simples, não descobri porque ?
A Correção é essa:
Dim mensagem As String = [Ô]sddgsdg[nil]ddd[Ô]
mensagem = mensagem.ToString.Split(CChar([Ô]|[Ô]))(0)
SAT_NAG.EnviadoVenda = e.Argument.Split([Ô]|[Ô])(0)
Nos novos projetos utilizando o mesmo framework não aceita, observe a imagem.
O VB me da a correção e que me serve também, mas porque não aceita da forma anterior que é mais simples, não descobri porque ?
A Correção é essa:
Dim mensagem As String = [Ô]sddgsdg[nil]ddd[Ô]
mensagem = mensagem.ToString.Split(CChar([Ô]|[Ô]))(0)
Citação::
Sempre utilizei isso em meus projetos:
SAT_NAG.EnviadoVenda = e.Argument.Split([Ô]|[Ô])(0)
Nos novos projetos utilizando o mesmo framework não aceita, observe a imagem.
O VB me da a correção e que me serve também, mas porque não aceita da forma anterior que é mais simples, não descobri porque ?
A Correção é essa:
Dim mensagem As String = [Ô]sddgsdg[nil]ddd[Ô]
mensagem = mensagem.ToString.Split(CChar([Ô]|[Ô]))(0)
Pelo que sei voce precisa de uma Matriz Para receber o String Partido
Dim mensagem As String = [Ô]sddgsdg[nil]ddd[Ô]
dim Matriz() as string
Matriz = mensagem.Split([Ô]|[Ô])
mensagem =matriz(0)
Amigo tente utilizar aspas simples , que ele identifica o char.
SAT_NAG.EnviadoVenda = e.Argument.Split([ô]|[ô])(0)
SAT_NAG.EnviadoVenda = e.Argument.Split([ô]|[ô])(0)
Citação:Pelo que sei voce precisa de uma Matriz Para receber o String Partido
Então, não precisava, fiz todo o projeto SAT por exemplo utilizando sem matriz.
SAT_NAG.EnviadoVenda = e.Argument.Split([Ô]|[Ô])(0)
Tenho outros exemplos simples de pegar uma string e separar dessa forma.
Bom dia!
Isso acontece porque o Option Strict está habilitado no seu Visual Studio.
Para desabilitar, você pode ir nas propriedades do projeto, vai na aba Compile e coloque o Option strict como Off. Assim ele cuidará das conversões implÃcitas pra você.
Mas na boa mesmo? Trabalhar com conversão implÃcita assim, no meu ponto de vista, não é bacana. Vale a pena deixar On e você mesmo cuidar das conversões, assim como no C#...
Abraços!
Isso acontece porque o Option Strict está habilitado no seu Visual Studio.
Para desabilitar, você pode ir nas propriedades do projeto, vai na aba Compile e coloque o Option strict como Off. Assim ele cuidará das conversões implÃcitas pra você.
Mas na boa mesmo? Trabalhar com conversão implÃcita assim, no meu ponto de vista, não é bacana. Vale a pena deixar On e você mesmo cuidar das conversões, assim como no C#...
Abraços!
Só para completar o que já falaram, então o problema é que a função que está sendo chamada espera receber como parâmetro um Char, e você esta passando um String e por isso o erro
Se comparar com C# existe você pode fazer
E no VB.Net? Ele também tem algo parecido, porém não é com aspas simples, pois elas são delimitadores de comentários, então fica assim
Então a sua chamada que está dando erro de compilação pode ser escrita assim
Se comparar com C# existe você pode fazer
var str = [Ô]Minha String[Ô]; //aspas duplas significa que é uma string
var ch = [ô]C[ô]; //aspas simples significa que é char
E no VB.Net? Ele também tem algo parecido, porém não é com aspas simples, pois elas são delimitadores de comentários, então fica assim
Dim str = [Ô]Minha String[Ô] [ô]strings como todo mundo já sabe
Dim ch = [Ô]C[Ô]c [ô]você coloca apenas um caractere e coloca um [Ô]c[Ô] logo depois de fechar a string
Então a sua chamada que está dando erro de compilação pode ser escrita assim
mensagem = mensagem.ToString.Split([Ô]|[Ô]c)(0)
DS2T,
Descoberto a causa.
OCELOT,
Ótimo, resolve porque muda muito pouco.
Obrigado a ambos, Se pudesse pontuaria os dois, vou pontuar OCELOT pela reposta mais detalhda.
Obrigado a todos.
Citação:Isso acontece porque o Option Strict está habilitado no seu Visual Studio.
Descoberto a causa.
OCELOT,
Citação:mensagem = mensagem.ToString.Split([Ô]|[Ô]c)(0)
Ótimo, resolve porque muda muito pouco.
Obrigado a ambos, Se pudesse pontuaria os dois, vou pontuar OCELOT pela reposta mais detalhda.
Obrigado a todos.
Tópico encerrado , respostas não são mais permitidas