2009-07-29 6 views
0

Ich verwende VS 2008, SQL Server 2008, IIS 6.0 Manager auf einem XP-Betriebssystem. Ich habe mein allererstes C# -Projekt in VS 2008 entwickelt und es läuft korrekt in VS. Aber jetzt muss ich dieses Projekt auf meiner Website veröffentlichen. Dieses Projekt umfasst auch eine Adventureworks-Datenbank von SQL Server 2008 auf demselben Computer.Bereitstellen von C# -Projekt auf einer Website mit IIS 6.0

Ich werde den gleichen Computer verwenden, um die Website zu hosten und diese Datenbank zu beherbergen. Ich kenne HTML, aber nicht, wie man ein .NET-Projekt zu einer Website hinzufügt, besonders eine, die auch SQL Server verwendet. Kannst du mir Tipps geben, wie es weitergeht? Dies ist keine Windows Form Application, daher bin ich mir ziemlich sicher, dass es sich um eine Webanwendung handelt.

Ich begann mit der rechten Maustaste auf das Projekt und wählen Sie "In Webanwendung konvertieren" und dann wählte ich die URL für meine Website. Aber als ich dann zu dieser URL ging, zeigte sie immer noch das Originalbild.

Dann habe ich IIS6 Manager, Standard-Website, und ich habe ein neues virtuelles Verzeichnis hinzugefügt. Ich tippte einen Alias ​​ein und zeigte den Pfad zu dem Ordner an, der meine Webanwendung enthielt (dieser Ordner enthält eine Ablage, App_Data, obj und den Ordner Properties. Er enthält auch alle .CS-Dateien).

Weiter überprüfte ich die MS-Dokumentation auf

http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/fc473b0b-162b-4146-932c-2a9a50c52ecb.mspx?mfr=true .

Aber so viel nicht helfen. Alles, was ich aus dieser Dokumentation gelernt habe, war das Kopieren der DLL in das Verzeichnis C: \ Inetpub \ wwwroot [MyApp] \ bin. Außerdem habe ich die Dateien web.config, global.asax und default.aspx in das Verzeichnis C: \ Inetpub \ wwwroot [MyApp] kopiert. Und dann habe ich die Eigenschaften der App wie folgt über den IIS6 Manager geändert: Registerkarte Virtuelles Verzeichnis Ich habe einen neuen lokalen Pfad ausgewählt, der auf das Verzeichnis C: \ Inetpub \ wwwroot \ AFS \ bin anstelle des nativen VS-Projektverzeichnisses zeigt (C: \ Dokumente und Einstellungen \ Neuer Besitzer \ Meine Dokumente \ Visual Studio 2008 \ Projekte \ AddFileToSQL \ AddFileToSQL).

Der einzige Unterschied zwischen diesen beiden Verzeichnissen sehe ich ist, dass der Name meiner Anwendung in VS und Ordnern "AddFileToSQL" ist, aber Name ich gab diesen Ordner unter C: \ Inetpub \ wwwroot \ war "AFS". Ist das wichtig?

Wenn ich zu meiner Website 192.168.2.2 navigiere, zeigt es mir immer noch die Standard-Webseite. Wenn ich jedoch zu gehe, fordert es mich auf, ein Passwort einzugeben. Welches Passwort und ist das richtig? Und ist dies die richtige URL, die eingegeben werden muss?

Es gibt so viele Registerkarten und Optionen in diesem IIS-Eigenschaftenfenster, bei denen ich nicht sicher bin, ob ich es richtig konfiguriert habe. Ich sehe auch viele Immobilienoptionen in VS 2008 für dieses Projekt. Im Moment ist alles in diesen beiden Eigenschaftenfenstern auf Standard eingestellt. Muss ich irgendwelche Änderungen an diesen Eigenschaften vornehmen?

Ja, ich weiß, ich habe XP. Ziel und Entwicklungsserver sind gleich. Diese XP ist die einzige Maschine, die ich habe. Sind Sie sicher, dass IIS 6 nur mit Server 2003 funktioniert? Weil ich weiß, dass ich den IIS6 Manager konfigurieren kann.

Ich bin mir nicht sicher, ob es Cassini ist oder nicht, aber von VS, wenn ich diese Anwendung ausführe, öffnet es einen Webbrowser und macht, was ich will. Ich habe den von Ihnen vorgeschlagenen aspnet_regiis-Befehl ausgeführt. Es sieht so aus, als ob das nicht installiert wurde, weil es einige Minuten dauerte, es zu installieren.

Nun zu welcher URL soll ich diese App testen? Ich habe das Eigenschaftenfenster geöffnet und es hieß lokaler Pfad des virtuellen Verzeichnisses C: \ Inetpub \ wwwroot \ AFS \ bin. Als Nächstes klickte ich mit der rechten Maustaste auf diese App im IIS6-Manager und wählte "Durchsuchen". Aber das führte dazu, dass es Output produzierte: "Die Website lehnte es ab, diese Webseite zu zeigen". Ich fühle mich sehr nah an der Lösung, aber immer noch nicht da. Hast du andere Vorschläge?

+0

Ich bekomme ein déjà vu. – ZippyV

+0

@salvationishere: Ich habe Kommentare zu meiner Antwort hinzugefügt (siehe unten) –

+0

Was lässt Sie glauben, dass Sie IIS 6 haben? Ist das Windows XP 64-Bit? –

Antwort

0

Am einfachsten können Sie eine Webanwendung bereitstellen, indem Sie Veröffentlichen verwenden, indem Sie mit der rechten Maustaste auf die Webanwendung klicken und "Veröffentlichen" auswählen. Sie können entweder einen HTTP-Pfad oder einen vollqualifizierten Laufwerkspfad oder eine Dateifreigabe angeben.

Normalerweise wird die Eingabeaufforderung Benutzername/Passwort angezeigt, wenn Sie die integrierte Windows-Authentifizierung aktiviert und anonymous deaktiviert haben. Wenn Ihr Windows-Benutzer Teil einer Domäne ist, sollten Ihre NT-Anmeldeinformationen durch den Browser fließen IE), wenn Sie die Website mit einem Mozilla-basierten Browser wie Firefox treffen, müssen Sie möglicherweise Ihre Anmeldeinformationen eingeben.

Wenn Sie keine SQL-Authentifizierung (UserID/Password in Web.config) verwenden, müssen Sie außerdem Zugriff auf das Konto gewähren, unter dessen Identität Ihre Website unter (standardmäßig) Web-Apps ausgeführt wird laufen unter Netzwerk-Service)

Hoffe, das hilft.

+0

Funktioniert immer noch nicht für mich. Ich eingegeben http://192.168.2.2/AFS/Default.aspx und es gab den Fehler zurück: Die XML-Seite kann nicht angezeigt werden ... Ein Name wurde mit einem ungültigen Zeichen gestartet. Fehler beim Verarbeiten der Ressource 'file: /// C: /Inetpub/wwwroot/AFS/Default.aspx'. Lin ... <% @ Page Language = "C#" AutoEventWireup = "true" ... Und das war, nachdem ich den Link überprüft: http://msdn.microsoft.com/en-us/library/ms998297. aspx. Von dieser URL habe ich ein neues benutzerdefiniertes Benutzerkonto hinzugefügt, um ASP.NET-Berechtigungen zu verwenden, aber dieser Link war für Server 2003 und ich habe XP, also war Schritt 4 nicht dasselbe. Was kann ich sonst noch tun? – salvationishere

+0

Stellen Sie die Bereitstellung auf einem Windows Server 2003-System oder auf XP bereit. Ihre ursprüngliche Frage erwähnt XP mit IIS 6.0, IIS 6 ist nur unter Windows Server 2003 verfügbar. Können Sie die Seite aus dem integrierten Visual Studio-Webbrowser (Cassini) bei der Entwicklung anzeigen? –

+0

Können Sie sicherstellen, dass .NET auf dem Zielserver installiert ist? auch eine Eingabeaufforderung öffnen, und navigieren Sie zu C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 und führen die aspnet, um sicherzustellen, wird wie folgt mit IIS registriert: aspnet_regiis.exe -i –