Olá Pessoal.
Estava tentando deixar meus outros impostos IKCV, ICCC flexíveis para que fossem decorados e decorar outros impostos mas uma chuva de erros apareceram :)) ...Só um exemplo: Meu imposto IKCV ficou assim:
public class IKCV : TemplateDeImpostoCondicional
{
public IKCV() : base() { }
public IKCV(Imposto outroImposto) : base(outroImposto) { }
public override bool DeveUsarMaximaTaxacao(Orcamento orcamento)
{
return orcamento.Valor > 500 && TemItemMaiorQue100ReaisNo(orcamento);
}
public override double MaximaTaxacao(Orcamento orcamento)
{
return orcamento.Valor * 0.10;
}
public override double MinimaTaxacao(Orcamento orcamento)
{
return orcamento.Valor * 0.06;
}
private bool TemItemMaiorQue100ReaisNo(Orcamento orcamento)
{
foreach (Item item in orcamento.Itens)
{
if (item.Valor > 100) return true;
}
return false;
}
public override double Calcula(Orcamento orcamento)
{
return orcamento.Valor * 0.01 + CalculoDoOutroImposto(orcamento);
}
}
e já ficou marcado o IKCV com a mensagem 'IKCV' does not implement inherited abstract member 'Imposto.Calcula(Orcamento).
E também ficou sublinhado de vermelho o Calcula com a mensagem: 'IKCV.Calcula(Orcamento)': cannot override inherited member 'TemplateDeImpostoCondicional.Calcula(Orcamento)' because it is not marked virtual, abstract, or override
Não consegui achar uma solução. Nos outros impostos também ocorreram erros mas se eu achar o erro desse solucionarei dos demais.
Obrigado.