Object reference not set to an instance of an object.

mercoledì 25 febbraio 2009 - 17.25

$ilver Profilo | Junior Member

Ciao a tutti,
ritorno sul forum per descrivere un nuovo problema che è il seguente.

Io ho un sito web creatoin c# e che ha una sua pagina default.aspx che viene caricata e non da problemi.
Questa pagina però è troppo pesante allora io ho pensato di creare un vbs che mi leggesse il codice html così facendo creo un pagina nuova chiamata default.html.
Quando questa pagina viene letta dal mio Vbs per creare la default.html, quest'ultima mi viene creata di 5k e quando la vado a puntare dal browser mi da il seguente errore:

--------------------------------------------------------------------------------------------------------------------------------------
Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.

Source Error:


Line 39: Page.UICulture = lang;
Line 40: }
Line 41: else if (Request.UserLanguages.Length != 0)
Line 42: {
Line 43: lang = Request.UserLanguages[0];

Line: 41 error
---------------------------------------------------------------------------------------------------------------------------------------

Perchè mi da errore solo quando mi crea la pagina html mentre se punto l'aspx tutto funziona correttamente?

rossimarko Profilo | Guru

Ciao,

scusa ma non ho capito i passaggi. Perchè crei la pagina html? Per non far elaborare tutte le volte la richiesta? In questo caso puoi usare l'output cache di asp.net http://msdn.microsoft.com/it-it/library/hdxfb6cy.aspx
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko

$ilver Profilo | Junior Member

ok grazie.
volevo chiederti solo questo, se metto <%@ OutputCache... nella mia
pagina aspx (perchè da come ho capito li devo metterlo) e poi come Duration="30" Location="Server" vuol dire che
ci impiega 30 secondi a memorizzare la pagina sul server giusto?
Inoltre per quanto tempo starà in cache quella pagina?
Domanda stupida (è la prima volta che tratto questa cosa) : io come
faccio a far puntare la pagina che è in cache e non quella aspx?

Scusate ancora per la mia domanda, mi rendo conto che è molto stupida,

rossimarko Profilo | Guru

Se metti duration="30" vuol dire che la pagina viene tenuta in cache per 30 secondi. Non dovrai fare nient'altro è il motore di asp.net che gestisce il tutto. La prima richiesta verrà elaborata e al termine verrà salvata in cache. Tutte le successive verranno prelevate dalla cache fino allo cadere dei 30 sec

-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko

$ilver Profilo | Junior Member

ok, tu mi dici che farà tutto asp.net quindi il framework (io ho il 2.0) ma va bene anche se ho cretao il tutto come website e non come webapplication?

Grazie mille davvero di tutto.

rossimarko Profilo | Guru

Si è uguale. Web site o webproject differiscono per le modalità di gestione del progetto, ma il comportamento della pagina è identico.

Comunque se vuoi fare una verifica inserisci nella pagina una label che visualizza la data esecuzione (DateTime.Now) comprensiva dei secondi. Poi una volta caricata la pagina dovresti vedere che facendo refresh dal browser la data non cambia fino allo scadere della cache
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko

$ilver Profilo | Junior Member

Ok provo e ti faccio sapere.

Grazie mille anche per la pazienza
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5