33 messaggi dal 15 marzo 2011
Salve a tutti,
vi spiego la mia casistica: nel page_load di un website effettuo la trasform xslt/xml, con qualcosa del genere:

using (StringWriterWithEncoding stringWriter = new StringWriterWithEncoding(System.Text.Encoding.UTF8))
{
xslt.Transform(xmlDocResponse.CreateNavigator(), null, stringWriter);
xslt = null;

_ret = stringWriter.ToString();

_ret = System.Net.WebUtility.HtmlDecode(_ret);
}

e benche' sia tutto in try..catch, da ieri la riga xslt.Transform non viene eseguita saltando direttamente fuori dalla default.aspx con un errore tipo "problemi di connessione...".

Come e' possibile? e soprattutto come e' che non riesco a intercettare l'errore ??
Grazie

NB: la cosa bella e' che in locale mi funzia ma sul server No (Win Server 2008 R2 Std con FWK 4.0)
33 messaggi dal 15 marzo 2011
Nessun idea?
Sto cercando in giro ma non trovo direzioni..
33 messaggi dal 15 marzo 2011
Niente.
Non trovo riscontri... eppure un istruzione che non solleva eccezioni dovrebbe essere eclatante.
11.886 messaggi dal 09 febbraio 2002
Contributi
ciao,
quando si verificano problemi "strani", procedi metodicamente e non mettere in dubbio quello che sai per certo.
Dunque, sai sicuramente che quando del codice solleva un'eccezione, essa viene soppressa se quel codice si trova all'interno di un blocco try...catch. Quindi il problema deve essere al di fuori del blocco try...catch, magari si tratta di qualcosa che ha bisogno di quella trasformazione XSLT che però è fallita.
Un modo affidabile per trarre delle conclusioni è usare il debugger di Visual Studio.
Siccome il problema non si sta verificando in locale ma sul server, sarebbe opportuno configurare il debugging remoto. Qui trovi la procedura.
http://msdn.microsoft.com/it-it/library/bt727f1t.aspx

Prima di farlo, però, vedi se ti è d'aiuto lo stack trace, cioè la parte su sfondo giallo che appare quando una pagina Asp.Net va in errore. Anche da lì potrai vedere qual è la riga che sta causando il problema.

L'unica cosa che devi fare per far apparire lo stack trace è disabilitare gli errori custom. Quindi, nel web.config metti questo all'interno della sezione <configuration><system.web>
<customErrors mode="Off" />

Togli anche il try...catch dal blocco di codice che opera la trasformazione, così lo lasci libero di mandare in errore la pagina, se deve, e tu potrai capire qual è il problema.

ciao
Modificato da BrightSoul il 20 novembre 2012 22.23 -

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.