I need your help with the following question.
I have a data access class that has a method that takes the parameters to execute a stored procedure.
The problem is this, I have several objects in the application and I'm trying to create a class that receives one of these objects and execute the method of adding parameters according to the object received.
Follow the code you've made so far:
Data access class method that receives the parameters.
public void AddParamentros(string parametro, dynamic valorParametro)
{
listaParamentrosSql.Add(new SqlParameter { ParameterName = parametro, Value = valorParametro });
}
Data Class Usage:
public class ManterDados
{
AcessoDadosSql acessoDados = new AcessoDadosSql();
public string manter(dynamic objeto, StoredProcedures procedure)
{
//Limpa parâmetros adicionados
acessoDados.LimparParametros();
// Adiciona os parametros
addParametrosSql addParam = new addParametrosSql(objeto);
// Executa a SP
string retorno = acessoDados.ExecutaSql(System.Data.CommandType.StoredProcedure, procedure);
return retorno;
}
}
This is class I'm having problem with:
public class addParametrosSql
{
AcessoDadosSql acessoDados = new AcessoDadosSql();
private void adicionarParametros(PessoaJuridica pessoaJuridica)
{
acessoDados.AddParamentros("@Cnpj", pessoaJuridica.CNPJ);
acessoDados.AddParamentros("@IE", pessoaJuridica.INSCRICAO_ESTADUAL);
acessoDados.AddParamentros("@Suframa", pessoaJuridica.SUFRAMA);
}
private void adicionarParametros(PessoaFisica pessoaFisica)
{
acessoDados.AddParamentros("@Cpf", pessoaFisica.CPF);
acessoDados.AddParamentros("@Nome", pessoaFisica.NOME);
}
}
What is the correct procedure for the addParametrosSql class to execute the addParametros method according to the object passed as parameter?
When I pass the parameter as Dynamic, even though it is of