2012-02-20 17 views
9

Osservando le nostre query da NHibernate è chiaro che l'alias di colonna non è coerente, un problema per le prestazioni quando il piano di esecuzione di sql server vede la stessa query di una query diversa a causa dell'alias della colonna incoerente.Alias ​​della colonna sql incoerente di NHibernate

Un esempio potrebbe essere qualcosa di simile:

SELECT this_.Id as Id44_0_ FROM dbo.[Foos] this_ 

SELECT this_.Id as Id43_0_ FROM dbo.[Foos] this_ 

C'è un modo siamo in grado di fare alias di colonna coerente?

Stiamo utilizzando Fluent NHibernate con la mappatura automatica

+3

Dov'è il codice che mostra questo accada? –

+0

NHibernate ha utilizzato questo tipo di alias con ogni query che fai, quindi quale codice ti piacerebbe vedere? – Lehto

+0

Le due query che risultano in quelle istruzioni SQL. –

risposta

0

ho mai visto lo stesso Query NH per generare SQL diversi durante l'esecuzione dell'applicazione. Penso che non devi preoccuparti delle prestazioni a causa di questo. (Tranne il caso in cui è necessario avviare e arrestare l'app frequentemente.)

Qualsiasi modifica necessaria per rendere le query SQL sempre coerenti (anche dopo la modifica del modello di dati) è dolorosa, non soluzioni assolutamente valide e pensa che non sia accettabile per te.

Problemi correlati