2012-03-29 5 views
0

Ich habe keine Websites zuvor auf einem IIS7 bereitgestellt. Ich habe mich gefragt, ob jemand mir helfen könnte, um sicherzustellen, dass ich es richtig mache. Ich habe eine ASP/C# -Website, die ich bereitstellen möchte. Der einzige Zugang, den ich zum Server habe, ist über RDP. Kein FTP oder was auch immer.Web-Bereitstellung IIS7

Ich habe Anleitungen über verschiedene Bereitstellungsoptionen gelesen und keiner spricht wirklich über Dateisystembereitstellung, die ich denke, ist meine einzige Option.

Grundsätzlich stelle ich die Dateien lokal auf meinem Laptop und ich kopiere es und füge es auf dem Remote-Server. Ich habe die kompilierte Site in das Verzeichnis \ intepub \ wwwroot gestellt und verwende inetmgr, um das zur Standard-Site hinzuzufügen. Ich habe den richtigen App-Pool auf .net 4.0 eingestellt, da dies das Framework ist, das ich für die ASP-Site verwendet habe.

Ich kann auf einige der Komponenten/Seiten der Site zugreifen, aber für einige von ihnen nicht. Es gibt mir Fehler, aber die eine Sache, die ich bemerkte, ist, dass die Fehler Verzeichnispfade enthält, die sich auf meinen Laptop beziehen, wo ich die Seite entwickelte. Also nehme ich an, dass ich die Website nicht korrekt veröffentliche.

+1

können Sie diese Fehlermeldungen posten? –

+0

Ihre Annahme ist nicht unbedingt korrekt - wenn Sie Stack-Traces in asp.net-Fehlerseiten sehen, ist es normal, dass Sie die Dateipfade von der Build-Maschine sehen und nicht den Server, auf dem die Site läuft. – KazR

+0

[NullReferenceException: Objektverweis nicht auf eine Instanz eines Objekts festgelegt.] ModuleOne.Pages.Faculty.Page_Load (Objektabsender, EventArgs e) in D: \ Schule \ Winter 2012 \ SYST34579 \ Deliverable 3 \ ModuleDeliverable3 \ ModuleDeliverable3 \ Faculty \ FacultyOnly.aspx.cs: 27 – ReiRei

Antwort

0

Klingt zurück Tabelle auf der Anweisung

if (GetData.getTable().Rows.Count != 0) 

null ist. Dies würde die Ausnahme auslösen, die Sie bekommen. Sie können dieses Problem beheben, indem Sie sicher, dass Tabellenobjekt ist eine tatsächliche Instanz (unter der Annahme Datentabelle):

Datatable tbl = new Datatable(); //OK 

Datatable tbl = null; //Not OK 

Auch sagte man die NullReferenceException nur einer von ihnen ist. Vielleicht ist das nicht das Grundproblem. Sie sollten den Teil des Codes haben, der die Verbindung öffnet und die Abfrage innerhalb eines try/catch-Blocks ausführt, und wenn es dort ein Problem gibt, können Sie den Fehler abfangen und wissen, was schief läuft. Wenn Sie Ihr Problem eingrenzen können, können wir hilfreicher sein.

+0

Das ist die Sache. Das getTable() gibt eine Zeile auf dem Erstellungscomputer zurück, und ich habe einen statischen Wert für die Abfrage festgelegt, die sich zu Testzwecken in der Tabelle befindet. Also, ich glaube wirklich, dass ich etwas auf dem connectionString Teil vermisse. Dies ist der Teil der Verbindungszeichenfolge auf meiner Build-Maschine String connectionString = "Server = 142.xx.xx.xx; Datenbank = *******; Benutzer = *******; Passwort = **** ** "; (Entfernte private Info) – ReiRei

+0

Wenn ich die Dateien auf den Server übertrage, ändere ich den connectionString passend zu String connectionString = "Server = (lokal) \ instanceName; Database = *******; User = *** ****; Passwort = ******** ";. – ReiRei

+0

@ReimarRobles Bitte sehen Sie mein Update :) –