Cum să-i spun ce pagină se referă la un DLL în site-ul ASP.NET precompiled

voturi
1

Sunt folosind o pre-compilate ASP.NET 2.0 site-ul (de exemplu, copiate la server folosind build-> Publicare site-ul facilitate în Visual Studio 2005). Am captura și log toate erorile care sunt de obicei destul de detaliate, dar in ultimul timp am fost obtinerea următoarea eroare cu nici o altă informație:

Nu s-a putut încărca ansamblul 'App-ul Web-rp2eml-j'. Asigurați-vă că este compilat înainte de a accesa pagina.

Acum, că fișierul 'App- ul Web-rp2eml-j' ar trebui să fie un DLL în dosarul meu bin , care a fost creat pentru site - ul de pre-compilate. Întrebarea mea principală este, cum pot spune ce pagina ASPX caută acel dll? Am încercat re-publicarea site - ului, și chiar complet anulând site - ul și re-publicare, dar problema nu dispare.

Când Googling problema, cele mai multe răspunsuri cu privire la acest centru de mesaje de eroare în jurul valorii de asigurându - vă că IIS este configurat să utilizeze ASP.NET 2.0 în loc de 1.1. Aceasta nu este problema mea.

NOTA 1: Site-ul totul pare să funcționeze, dar, evident, există (cel puțin) o pagină care este rupt, care nu pot găsi.

NOTA 2: Numele de fișier de mai sus ar trebui să aibă loc de subliniere liniute, dar SO lui de marcare se schimbă textul între subliniere să italice.

Întrebat 12/03/2009 la 13:40
sursa de către utilizator
În alte limbi...                            


2 răspunsuri

voturi
0

Poate puteți captura informații mai detaliate cu privire la eroarea cu evenimentul Global.asax Application_OnError, astfel încât să puteți viziona stivă Trace.

Publicat 12/03/2009 la 13:45
sursa de către utilizator

voturi
2

Are dll menționat există în directorul bin? Tu italic acea parte, așa că bănuiesc că nu. Asta ar putea însemna că eroarea se referă la un DLL în dosarul fișierele temporare.

Această problemă poate apărea dacă una sau mai multe dintre DLL-uri în folderul Fișierele temporare ASP.NET sunt corupte. Uneori, ASP.NET nu se actualizează fișierele de aici, dacă nu există modificări în dll care locuiesc în directorul virtual. Se întâmplă de fiecare dată într-un timp pe serverul meu.

Soluția mea este după cum urmează:

  1. Opriți serviciile IIS pe server pentru un minut sau cam asa ceva.

  2. Navigați la folderul fișiere temporare ASP.NET (de obicei, situat la "% windir% \ Microsoft.NET \ Framework \\ Temporary ASP.NET Files \ MyApplicationName") și șterge toate fișierele din dosar.

  3. Publicați și încărcați site-ul meu la directorul virtual configurat.

  4. Reporniți IIS și alte servicii.

Acest proces simplu de 4-pas a lucrat foarte bine pentru mine în trecut și poate fi în valoare de o încercare pentru tine.

Pentru a răspunde la întrebarea de bază, cu toate acestea, există două moduri de a „inginerie inversă“ dll:

  1. Încărcați-l în ILDASM și verificați clasele conținute.
  2. Utilizați Reflector pentru a salva toate fișierele de clasă conținute în DLL-ul într-un dosar.

Cu toate acestea, mă îndoiesc că în cazul în care acest lucru se va rezolva problema, deoarece fiecare dll ar putea conține mai multe fișiere de clasă și nu ar avea un indiciu cu privire la „care pagina aspx caută acel dll“.

Publicat 12/03/2009 la 13:57
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more