Domanda

Ho un sito web che ha 2 file come segue:

  • Page.aspx
  • page.aspx.cs

E 'usato per essere che ho potuto solo rilasciare nuovi file sul server web IIS e sarebbe compilare automaticamente i file e ho potuto accedere alla pagina per es.

http://www.website.com/page.aspx

... e la funzionalità associate nella classe della pagina contenuta nel file con estensione cs avrebbe funzionato bene.

Ora ottengo l'errore:. "Impossibile caricare il tipo namespace.classname" che si riferisce alla mia classe di pagina

Ora, per qualche strana ragione devo mettere tutti i miei file Cs, anche le classi di pagina nella cartella App_Code.

Tutto ciò che è cambiato sul mio sito web è che ho riorganizzato la struttura in modo che invece delle mie pagine di essere sulla web root sono ora all'interno di http:. //.../newfolder/page.aspx

Per qualche motivo tutti i miei file page.aspx.cs devono ora essere in App_Code.

Tutte le idee?

È stato utile?

Soluzione

Sembra che si stia mescolando un progetto di applicazione Web e un sito Web.

Sei sicuro che i file sono esattamente gli stessi? Forse una direttiva @Page dice CodeBehind = Page.aspx.cs e l'altro dice CodeFile = Page.aspx.cs?

CodeBehind richiede la compilazione di progetto, quindi non si può solo cadere in un nuovo file con estensione cs, è necessario caricare una nuova DLL compilata. CodeFile permetterà la compilazione dinamica.

La directory App_Code è dinamicamente compilato (in entrambi i casi) quando la vostra applicazione si accede, in modo la direttiva Eredita ha un tipo valido quando si mette il file lì. In generale, non farlo. Si desidera che il Cs file per andare con il file aspx. Utilizzare App_Code per le classi di business logic o di utilità che non sono associati con una pagina particolare.

Infine, è questa nuova sottodirectory impostato come una nuova applicazione in IIS? Che cosa significa il file web.config nella directory nuovo cambiamento? Stai usando la stessa versione di ASP.NET? Controllare il tag "compilation". Non sono sicuro di quello che si poteva fare lì per causare questo, ma sono sicuro che si potrebbe causare alcuni il caos.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top