Ich habe ein ASP.NET-Projekt, das IIS verwendet. Die IIS-Site ist für die Verwendung des benutzerdefinierten Bindungshostnamens konfiguriert. Die Projektdatei enthält folgende Einstellungen:
...
<UseIISExpress>false</UseIISExpress>
...
<ProjectExtensions>
<VisualStudio>
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
<WebProjectProperties>
<UseIIS>True</UseIIS>
<AutoAssignPort>False</AutoAssignPort>
<DevelopmentServerPort>8662</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>http://custom.host.name/</IISUrl>
<NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer>
<CustomServerUrl></CustomServerUrl>
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
</WebProjectProperties>
</FlavorProperties>
</VisualStudio>
</ProjectExtensions>
...
Wenn das Projekt so konfiguriert ist, kann ich von auf die Site zugreifen http://custom.host.name/
und VS stellt beim Debuggen automatisch eine Verbindung zum IIS-Worker-Prozess her.
Wenn ich ein Projekt neu lade (entweder durch Schließen / erneutes Öffnen der Lösung oder durch Entladen / erneutes Laden im Projektkontextmenü), passiert etwas Unerwartetes. Das Projekt kann nicht geladen werden, (load failed)
wird rechts vom Projektnamen im Lösungs-Explorer angezeigt und das Meldungsfeld wird mit der folgenden Meldung angezeigt (es wird auch im Ausgabefenster angezeigt):
The URL 'http://custom.host.name/' for Web project 'Some.Asp.Net.Project'
is configured to use IIS Express as the web server but the URL is currently
configured on the local IIS web server. To open this project, you must use
IIS Manager to remove the bindings using this URL from the local IIS web server.
Ich habe versucht, die Projektstandortkonfiguration aus der IIS Express- applicationhost.config
Datei zu entfernen , aber es hat nicht geholfen.
Dieses Problem tritt beim Zuordnen des Projekts zur IIS-Anwendung unter der Standardwebsite nicht auf.
Die VS-Version ist Ultimate 2012 Update 3.
quelle
UseIISExpress
auf false zu setzen. stackoverflow.com/a/19103452/138938<UseIIS>True</UseIIS>
um<UseIIS>False</UseIIS>
den Trick auch für mich zu tun. Danke für den Vorschlag!Antworten:
Das Öffnen als Administrator hat das Problem für mich nicht behoben. Was es für mich behoben hat, war, sowohl die
.csproj
als auch die.csproj.user
Dateien zu öffnen und sicherzustellen, dass beideUseIISExpress
eingestellt warenfalse
.In meinem Fall hat die
.csproj.user
Datei die Datei überschrieben.csproj
, obwohl sieSaveServerSettingsInUserFile
markiert warfalse
.quelle
Die Lösung lautet:
*.csproj.user
Datei löschen !quelle
*.csproj.user
können Sie nicht bearbeiten*.csproj
Ich habe " SaveServerSettingsInUserFile " auf True gesetzt und es hat bei mir funktioniert.
Quelle: hier klicken
quelle
Wenn Sie die Verwendung für IISexpress aktivieren, die applicationHost.Config (in% userprofile% \ iisexpress \ config), müssen Sie die Option "Servereinstellungen auf alle Benutzer anwenden (in Projektdatei speichern)" aktivieren, um zu vermeiden, dass Ihre Einstellungen geschrieben werden in yourProject.csproj.user
Dies entspricht dem Bearbeiten Ihrer Datei project.csproj und dem Schreiben.
<WebProjectProperties> <UseIIS>True</UseIIS> <AutoAssignPort>True</AutoAssignPort> <DevelopmentServerPort>62242</DevelopmentServerPort> <DevelopmentServerVPath>/</DevelopmentServerVPath> <IISUrl>http://localhost:8100/Claims/</IISUrl> <OverrideIISAppRootUrl>True</OverrideIISAppRootUrl> <IISAppRootUrl>http://localhost:8100/Claims/</IISAppRootUrl> <NTLMAuthentication>False</NTLMAuthentication> <UseCustomServer>False</UseCustomServer> <CustomServerUrl></CustomServerUrl> <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile> </WebProjectProperties>
Wenn Sie IISExpress aktivieren und Ihre Datei applicationHost.config keinen Eintrag zu Ihren Projekteinstellungen enthält, müssen Sie nur die Schaltfläche "Virtuelles Verzeichnis erstellen" drücken und fertig !hoffe das hilft
quelle
In meinem Fall hat das Löschen der Datei * .csproj.user einwandfrei funktioniert
quelle
Ich hatte das gleiche Problem, für mich war alles, was ich tun musste, Open Visual Studio als Administrator und dies löste das Problem für mich.
Klicken Sie einfach mit der rechten Maustaste auf Visual Studio 2012 und klicken Sie auf "Als Administrator ausführen". hoffe das hilft
quelle
Für mich funktionierte eine Kombination aus beiden für Visual Studio 2015 Preview mit Windows 7 64-Bit:
1. Löschen Sie die Datei * .csproj.user und
2.
<UseIISExpress>false</UseIISExpress>
in der Lösungsdatei.Schritte für Schritt 2: Klicken Sie in Visual Studio mit der rechten Maustaste auf Projekt ==> Entladen ===> Bearbeiten Sie die Lösung
quelle
Das ist genug
Kommentieren Sie diese Zeile in der Projektdatei x.csproj
x.csproj: Fehler: Die URL ' http: // localhost / x ' für das Webprojekt 'x' ist für die Verwendung von IIS Express als Webserver konfiguriert, die URL ist jedoch derzeit auf dem lokalen IIS-Webserver konfiguriert. Um dieses Projekt zu öffnen, müssen Sie den IIS-Manager verwenden, um die Bindungen unter Verwendung dieser URL vom lokalen IIS-Webserver zu entfernen.
quelle
Ich bin hier gelandet, als ein Projekt, das für die Verwendung von IIS konfiguriert ist, nicht geladen werden konnte, weil es die Website (myproject.mycompany.local) nicht finden konnte - obwohl die Website in meinem Webbrowser einwandfrei geladen wurde.
Die Lösung bestand darin, sicherzustellen, dass für die Bindung der Site in IIS 7 der Hostname auf "myproject.mycompany.local" festgelegt war. So gelangen Sie zu den Bindungen Ihrer Site:
Wenn Ihre Website auch nicht in den Webbrowser geladen wird, liegt dies wahrscheinlich daran, dass Sie in Ihrer Hosts-Datei keinen Eintrag dafür haben:
quelle
Wenn Ihr Projekt Teil einer Lösung ist, öffnen Sie die Lösungsdatei (.sln) und bearbeiten Sie den Projektabschnitt.
Es hat bei mir funktioniert.
quelle
Dieses Problem hat meinen heutigen Tag in VS 2013 ruiniert. Ich habe alle oben genannten Versuche unternommen, das Projekt jedoch erst geladen, als ich eine Website in IIS erstellt und diesen Abschnitt in der .csproj-Datei (insbesondere im IISUrl-Element) ausgefüllt habe:
quelle
Ich hatte das gleiche Problem, da das Ausführen als Administrator bei mir nicht funktioniert hat.
Wenn Sie
<UseIIS>True</UseIIS>
in der ".csproj" -Datei des Projekts vorübergehend auf "false" setzen, wird das Projekt möglicherweise geladen, aber nach dem Neustart oder Schließen der Lösung wurde der Wert wieder auf "True" gesetzt.Nachdem ich die Antwort von @Cyrus (die für mich funktioniert hat) für eine übersichtlichere Antwort vervollständigt hatte, konzentrierte ich mich mehr auf die Datei csproj.user des Projekts und fand die genaue Ursache des Problems: Auf
<UseIISExpress>true</UseIISExpress>
false setzen und dann das Projekt neu laden . funktioniert gut, ohne die Datei csproj.user zu löschen. Ergebnis ist wie folgt:quelle