AGGIORNAMENTO: tutti questi problemi riguardavano la conversione di un'applicazione Web in un progetto Web in Visual Studio. Una volta ho scavato e ho trovato la soluzione, come ho indicato come risposta di seguito.C#: come convertire un progetto di sito Web in un progetto Web
In sostanza, se si desidera aggiornare/spostare il progetto del sito Web in un progetto Web, si verificheranno una serie di errori. Il breve how-to è nella risposta qui sotto. Grazie a tutti per i commenti e l'aiuto.
vecchia domanda e il titolo è qui sotto:
Come avvolgere namespace xx {} a tutti i file di classe?
In che modo racchiudere lo spazio dei nomi su tutti i file codebehind in un progetto Web (o qualsiasi progetto)?
namespace MyDomain
{
// regular code here
}
farla breve ...
ho Conversione di un progetto che è stato esternalizzato all'estero. Oltre 20.000 file nel solo progetto "web", per un sito web così semplice (scuote la testa). È stato scritto in vs2005 usando VB.NET e C# (sì, entrambe le versioni). Inizialmente era un'applicazione del sito Web. L'ho convertito in un'applicazione Web, principalmente a causa degli 8.000 "temp" assemblaggi prodotti durante la pubblicazione.
Ok, sto convertendo in VS2008. Ho convertito tutto il codice in C#. Sembra buono. Ho portato tutto il codice App_Code/VB e C# speciale in assembly separati.
Ora quando tento di compilare di nuovo, sono avvisato di un numero enorme di errori. Risolvo questi problemi avvolgendo i file codebehind in uno spazio dei nomi e aggiornando il controllo userc per utilizzare il nuovo spazio dei nomi.
Ma ... 5000+ errori da fare ... Aiuto!
alt text http://eduncan911.com/blog/thumbnail/4-15-2009.6-00-13.PM.png
Forse c'è un altro modo? Ecco un frammento di esempio dal codehind:
public partial class MyHomepage_MyStuff_MyPosts : SecurePage
{ ... }
Avviso Il nome della classe MyHomepage_MyStuff_MyPosts. Questo è il percorso della directory nella posizione del file in /MyHomepage/MyStuff/MyPosts.aspx.
L'errore è che il file codebehind non riesce a trovare un riferimento al controllo utilizzato. Come ad esempio:
ctl_website_rpt.RowCount = _totalCount;
Questo è un controllo (la convenzione di denominazione) chiamato "ctl_website_rpt" all'interno del file ASPX. La pagina aspx ha nell'intestazione:
<%@ Page Title="My Posts" Language="C#"
MasterPageFile="~/MasterPages/Main.master" AutoEventWireup="true"
CodeFile="MyPosts.aspx.cs"
Inherits="MyHomepage_MyStuff_MyPosts" %>
Forse c'è un modo per fare riferimento a questa pagina altrove? Senza cambiarlo nel namespace di?
namespace Website.MyHomepage.MyStuff
{
public partial class MyPosts
{ ... }
}
<%@ Page Title="My Posts" Language="C#"
MasterPageFile="~/MasterPages/Main.master" AutoEventWireup="true"
CodeFile="MyPosts.aspx.cs"
Inherits="Website.MyHomepage.MyStuff.MyPosts" %>
Questa è un'idea. Sperando in un'altra soluzione (ha aggiornato la domanda in modo molto più dettagliato). – eduncan911