Error 1
The best overloaded method match for 'LojaVirtual.WEB.CarrinhoCompra.CalculaSedex(string, string, decimal, bool, bool, double)' has some invalid arguments
C:\LOJA5\LojaVirtual\lojaVirtual.WEB\CarrinhoCompra.aspx.cs
148 26
lojaVirtual.WEB
Error 2
Argument 3: cannot convert from 'double' to 'decimal'
C:\LOJA5\LojaVirtual\lojaVirtual.WEB\CarrinhoCompra.aspx.cs
148 73
lojaVirtual.WEB
public decimal CalculaSedex(string cepOrigem, string cepDestino, decimal peso, bool MaoPropria, bool avisoRecebimento, double valorDeclarado = 0.0)
{
decimal functionReturnValue = default(decimal);
//Cria uma requisição ao service dos correios, com os dados informados
System.Net.WebRequest Req = System.Net.WebRequest.Create("http://ws.correios.com.br/calculador/CalcPrecoPrazo.asmx" + "cepOrigem=" + cepOrigem + "&cepDestino=" + cepDestino +
"&peso=" + peso.ToString().Replace(",", ".") + "&resposta=xml");
System.Net.WebResponAse Resp = Req.GetResponse();
System.IO.StreamReader sr = new System.IO.StreamReader(Resp.GetResponseStream(), System.Text.Encoding.UTF7);
System.Data.DataSet ds = new System.Data.DataSet();
//Coloca os dados recebidos em um DataSet
ds.ReadXml(sr);
sr.Close();
Resp.Close();
if (Convert.ToInt16(ds.Tables["erro"].Rows[0]["codigo"].ToString()) != 0) {
throw (new Exception(ds.Tables["erro"].Rows[0]["descricao"].ToString()));
} else {
functionReturnValue = (Convert.ToInt16(ds.Tables["Dados_Postais"].Rows[0]["preco_postal"].ToString().Replace(".", ",")));
}
return functionReturnValue;
}
protected void cmdCalcular_Click(object sender, EventArgs e)
{
try {
decimal preco = CalculaSedex("27330680", (txtCEPDestino.Text), 1.23, false, true, 120.5);
lblResultado.Text = "O valor do frete é " + string.Format(CultureInfo.GetCultureInfo("pt-BR"), "{0:C}", preco);
}
catch (Exception ex)
{
lblResultado.Text = ex.Message;
}
}