Stack Overflow em Português Asked by NFe on September 29, 2020
Dado uma enum
como exemplo:
public enum IcmsCst
{
[XmlEnum("00")] Cst00,
[XmlEnum("10")] Cst10,
[XmlEnum("20")] Cst20,
...
}
Existe uma forma de anotação para que eu pudesse especificar que um determinado tipo de ICMS poderia aceitar somente um determinado tipo de CST
desse Enum
?
Como por exemplo:
public class Imposto
{
[XmlEnum(AcceptOnly = [IcmsCst.Cst00])] // como exemplo do que busco para a limitação
public ICMS Icms00 { get; set; }
}
E com isso essa ter a validação feita automaticamente ao serializar o objeto Imposto
em um XML?
Não tem mecanismo específico pronto. É possível criar um framework completo para tratar isso. Ou fazer o simples e na hora de importar a informação tratar se ela é válida ou não. Mecanismos genéricos são úteis para serem reaproveitados. Então existem quando é algo que todo mundo precisa, ou você deve fazer o seu, se precisar usar muitas vezes e isto traz vantagens.
Mesmo se fizer, precisa ter uma forma muito bem pensada de como tratar isso, o que pode não existir uma forma universal. Não aceita, e daí? Nem esse ponto está definido na pergunta, sem o critério claro não tem boa solução. De qualquer forma é muito difícil estabelecer esses critérios em código de forma declarativa.
Answered by Maniero on September 29, 2020
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP