Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
.NET Framework
Mtodo DeriveParameters
sabato 04 luglio 2009 - 17.37
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ale1971
Profilo
| Newbie
5
messaggi | Data Invio:
sab 4 lug 2009 - 17:37
Ciao,
Ho realizzato in progetto indipendente dal tipo di base dati con
DbProviderFactory.
Dopo una serie di problemi ora funziona correttamente con SQL server e su
Oracle (catastrofica la gestione dei paramentri).
Non trovo ora il metodo DeriveParameters della classe DbCommandBuilder???
Come posso fare?
Grazie
Jeremy
Profilo
| Guru
1.527
messaggi | Data Invio:
sab 4 lug 2009 - 18:17
Ciao Alessandro.
Quel metodo, nella classe DbCommandBuilder, non esiste, probabilmente, proprio per lo scopo specifico della classe DbProviderFactory.
Non hai proprio modo di definirli in fase di progettazione??
Facci sapere...
Ciao
ale1971
Profilo
| Newbie
5
messaggi | Data Invio:
lun 6 lug 2009 - 00:49
Ciao Jeremy,
grazie della risposta.
No, vorrei rendere la vita facile a chi utilizza il componente WebService per l'accesso remoto a dati generici almeno svincolandolo dal dover passare i paramentri di Output (caso Oracle).
Ho trovato una soluzione e te mostro di seguito, nel caso ti dovesse servire.
public string DeriveParameters(DbCommand command, DbCommandBuilder commandBuilder)
{
MethodInfo method;
string res = "";
Type commandType;
commandType = commandBuilder.GetType();
method = commandType.GetMethod("DeriveParameters");
if (method != null)
{
method.Invoke(null, new object[] { command });
foreach (DbParameter Par in command.Parameters)
res += "{ " + Par.ParameterName + ", " + Par.DbType.ToString() + ", " + Par.Direction.ToString() + " } \r\n";
}
return res;
}
E' come se il metodo esistesse ma non venisse esposto?!?
Ciao
Jeremy
Profilo
| Guru
1.527
messaggi | Data Invio:
lun 6 lug 2009 - 01:16
Si ... in effetti .... se non avessi già risolto, probabilmente, ti avrei suggerito anche io l'uso delle Reflection.
Ma penso che si sarebbe potuto risolvere anche implementando, in una classe, un'interfaccia, che esponesse quel metodo, ed ereditando dai vari tipi di oggetto del CommanBuilder.
Qualche passaggio in più ma, probabilmente, meno oneroso.
Ciao
ale1971
Profilo
| Newbie
5
messaggi | Data Invio:
lun 6 lug 2009 - 10:44
Perchè meno oneroso?
Se non ti fa perdere troppo tempo mi piacerebbe un mini-esempio della soluzione che mi hai indicato tu.
Ciao e grazie mille.
Jeremy
Profilo
| Guru
1.527
messaggi | Data Invio:
mar 7 lug 2009 - 11:50
Ok ... se non hai fretta ... nel fine settimana vedo di farlo
Ciao
ale1971
Profilo
| Newbie
5
messaggi | Data Invio:
mar 7 lug 2009 - 12:27
Sei troppo gentile,
non perdere tempo, mi bastano due dritte senza fretta e poi provo io.
Ciao
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !