Reflection
26/06/2006
0
Olá estou precisando de ajuda obter informações de uma classe/metodo comum para dois namespaces diferentes.
Por exemplo:
Tenho os seguintes namespaces:
Sistema.Oracle e Sistema.SqlServer. Neles existe uma classe RetornaSQL com o método Constante(string NomeSQL)
Estou tentando fazer o reflection da seguinte maneira:
private static readonly string path = ´Sistema.´ + DBHelper.database;
public IRepositorioSql ObtemRepositorio()
{
string className = path + ´.RetornaSQL´;
return (IRepositorioSql)Assembly.Load(path).CreateInstance(className);
}
IRepositorioSql é uma interface para a classe RetornaSQL e DBHelper.database serve para obter o nome do banco no Web.Config e então montar a estrutura do namespace na variável path.
//Interface IRepositorio.cs
namespace Sistema.IRepositorio
{
public interface IRepositorioSql
{
string Constante(string NomeSQL);
}
}
Estou disparando o metodo ObtemRepositorio da seguinte maneira:
DbDataReader rdr = DBHelper.ExecuteReader(DBHelper.ConnectionStringLocalTransaction, CommandType.Text, ObtemRepositorio().Constante(´COMANDO_SQL_DESEJADO´), null);
Já utilizei uma construção semelhante para outro sistema no entanto estou obtendo o seguinte erro agora:
[b:319066a482]FileNotFoundException was unhandled by user code[/b:319066a482]
Could not load file or assembly ´Sistema.SQLServer´ or one of its dependencies. The system cannot find the file specified.
Alguém saberia me dizer como resolver isto?
Obraigado até mais.
Por exemplo:
Tenho os seguintes namespaces:
Sistema.Oracle e Sistema.SqlServer. Neles existe uma classe RetornaSQL com o método Constante(string NomeSQL)
Estou tentando fazer o reflection da seguinte maneira:
private static readonly string path = ´Sistema.´ + DBHelper.database;
public IRepositorioSql ObtemRepositorio()
{
string className = path + ´.RetornaSQL´;
return (IRepositorioSql)Assembly.Load(path).CreateInstance(className);
}
IRepositorioSql é uma interface para a classe RetornaSQL e DBHelper.database serve para obter o nome do banco no Web.Config e então montar a estrutura do namespace na variável path.
//Interface IRepositorio.cs
namespace Sistema.IRepositorio
{
public interface IRepositorioSql
{
string Constante(string NomeSQL);
}
}
Estou disparando o metodo ObtemRepositorio da seguinte maneira:
DbDataReader rdr = DBHelper.ExecuteReader(DBHelper.ConnectionStringLocalTransaction, CommandType.Text, ObtemRepositorio().Constante(´COMANDO_SQL_DESEJADO´), null);
Já utilizei uma construção semelhante para outro sistema no entanto estou obtendo o seguinte erro agora:
[b:319066a482]FileNotFoundException was unhandled by user code[/b:319066a482]
Could not load file or assembly ´Sistema.SQLServer´ or one of its dependencies. The system cannot find the file specified.
Alguém saberia me dizer como resolver isto?
Obraigado até mais.
Cbueno
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)