GERAR CLASSE CTE
Faça uma procura no seu HD por [Ô]xsd.exe[Ô]. Se ele existir, inclua o caminho para ele na variável de ambiente [Ô]path[Ô]. Abra o prompt de comando e vá para a pasta onde os modelos XSD estão. Execute o comando que passei anteriormente. Me pague uma antarctica.
Kerplunk, vc tem razão, eu não havia entendido como abastecer os itens da classe. Ao montar o xml manualmente, você passa ja o conteúdo final que vai nas tags, pela classe, alguns continuam assim, mas outros, são por enumeração, tipo ctexml.infCte.ide.cUF = [Ô]35[Ô] ( 35 é o código de SP), porém ao localizar pela enumeração da classe, é 19, o qual converte para 35 na geração, e assim com vários outros itens. Ja nas tags UFENV,UFINI,UFFIM ó codigo para SP na classe é 25. Neste caso, não basta apenas seguir o manual, é perciso atentar ao código de conversão da classe, correto ?. Agora, tem uns itens que ficam mais difÃceis, por ex: ambiente (tpamb) na classe, item1=0 e item2=1, no manual, homologação=2 a produção=1, qual a lógica para passar um campo como este ?. Ainda estou aprendendo, mas parece que a classe tem prós e contras, pois facilita de um lado, e gera mais trabalho ou maior atenção de outro.
Editei pois pintou uma dúvida. SE no meu sistema, a nÃvel de banco de dados, eu tenho nos cadastros, por ex:, a sigla da UF e o código da UF, e na classe, tenho que usar o código enumerado, como fica ?, acho que ainda não entendi.
Editei pois pintou uma dúvida. SE no meu sistema, a nÃvel de banco de dados, eu tenho nos cadastros, por ex:, a sigla da UF e o código da UF, e na classe, tenho que usar o código enumerado, como fica ?, acho que ainda não entendi.
Em pesquisa pela internet diz que nas versões recente do Visual Studio não tem o xsd.exe, conforme esse site: https://juliankay.com/development/download-xsd-exe/
Vou tentar baixar e fazer como explicou.
Quanto:
Citação:Me pague uma antarctica.
Quando passar por Maringá-PR me avise que te pago uma grade com direito a churrasco....
Enumeradores são estruturas de dados para padronizar valores. Ao invés de deixar [Ô]livre[Ô] para colocar qualquer valor, limita-se os valores possÃveis naquela propriedade/campo. Nas classes da NFe, esses enumeradores não estão muito bem construÃdos e a maioria está como [Ô]item1[Ô], [Ô]item2[Ô] e etc, mas eles podem tranquilamente serem renomeados para o que vocês quiserem. Ao serializar uma instância dessa classe, o valor serializado será o valor do Ãtem enumerado. Ou seja, [Ô]item1[Ô] pode ter valor [Ô]99[Ô] e é o que será escrito no arquivo/string XML. Exemplo:
Ao utilizar:
No caso acima, a propriedade [Ô]valores[Ô] da instância x que é do tipo [Ô]minhaClasse[Ô], conterá 1, que é o valor da enumeração e é isso que constará no arquivo/string serializado.
public enum valores
{
valor1 = 1,
valor2 = 99,
valor3 = 145
}
public class minhaClasse
{
public valores Valor { get; set; }
}
Ao utilizar:
minhaClasse x = new minhaClasse();
x.valores = valores.valor1;
No caso acima, a propriedade [Ô]valores[Ô] da instância x que é do tipo [Ô]minhaClasse[Ô], conterá 1, que é o valor da enumeração e é isso que constará no arquivo/string serializado.
Tópico encerrado , respostas não são mais permitidas