Ich habe kürzlich einen WCF-Dienst erstellt, der beim Testen in Visual Studio 2008 einwandfrei funktioniert. Wenn ich das Projekt jedoch auf IIS bereitstelle und versuche, über IIS auf die SVC-Datei zuzugreifen, wird folgende Fehlermeldung angezeigt:
"Server Error in '/' Application.The resource cannot be found. "
Ich habe dieses Problem seit 4 Tagen.
In den Handlerzuordnungen von IIS Manager werden zwei Einträge für .svc angezeigt:
svc-Integrated and svc-ISAPI-2.0
Was hat bei mir unter Windows 2012 Server R2 funktioniert:
Danke geht an "Aaron D"
quelle
dism /online /enable-feature /featurename:WCF-http-Activation45 /all
und auchdism /online /enable-feature /featurename:WCF-http-Activation /all
Ich habe diese Anleitung in einem Blogbeitrag gefunden , der auf diesen Schritt hinwies, der für mich funktionierte (Windows 8, 64-Bit):
quelle
Ich sehe, Sie haben Ihr Problem bereits gelöst - aber für die Nachwelt:
Wir hatten ein ähnliches Problem und der SVC-Handler war bereits korrekt installiert. Unser Problem waren die Verarbeitungsanforderungen des ExtensionlessUrl-Handlers, bevor sie den SVC-Handler erreichten.
Um dies zu überprüfen, zeigen Sie in Handlerzuordnungen in IIS Manager auf Webserverebene die Liste der Handler in der angegebenen Reihenfolge an (dies ist eine Option auf der rechten Seite). Wenn die verschiedenen ExtensionlessUrl-Handler über den SVC-Handlern angezeigt werden, verschieben Sie sie wiederholt nach unten, bis sie unten angezeigt werden.
quelle
Überprüft, ob Ihr Verzeichnis in eine Anwendung konvertiert wurde, die Ihr IIS ist.
quelle
Ich hatte heute das gleiche Problem.
Für mich bestand die Lösung darin, in IIS zu wechseln, mit der rechten Maustaste auf den neuen Website-Namen zu klicken, Eigenschaften, ASP.Net auszuwählen und die ASP.Net-Version von "1.1.4322" (die als Standard festgelegt wurde) zu ändern. bis 2.0.50727.
Sobald ich das getan hatte, konnte ich mit der rechten Maustaste auf die .svc-Datei klicken, auf "Durchsuchen" klicken und die freundliche Service-Webseite sehen.
quelle
Dies kann auch zu einem Problem werden, nachdem die IIS 6-Verwaltungskompatibilität in Windows 10 aktiviert wurde. Durch Festlegen der HTTP-Aktivierung des Frameworks unter WCF Services wird das Problem behoben.
quelle
In meinem Fall wurde der Fehler durch falsche Zuordnungseinstellungen in der Datei applicationhost.config (\ System32 \ inetsrv \ config) verursacht. Aus irgendeinem Grund wurde es von Visual Studio 2013 beim Erstellen eines virtuellen Verzeichnisses in IIS beschädigt. Das Update bestand darin, den Abschnitt "Sites" in der Datei manuell zu bearbeiten.
quelle
Es gibt 2 .net Framework-Versionen, die unter den Funktionen unter Rolle / Funktionen in Server 2012 hinzufügen angegeben sind
ein. 3.5
b. 4.5
Je nach verwendetem Framework können Sie die HTTP-Aktivierung unter WCF-Diensten aktivieren . :) :)
quelle
In meinem Fall Win 10. ist die Datei applicationHost.config durch VS 2012 beschädigt. Sie können den Verlauf dieser Datei unter C: \ inetpub \ history kopieren. Starten Sie dann IIS neu und es funktioniert ordnungsgemäß.
quelle
Ich musste die Erweiterung .svc zu den zulässigen Erweiterungen in den Einstellungen für die Anforderungsfilterung hinzufügen (zuvor wurden 404.7-Fehler angezeigt).
quelle
Das Hinzufügen des Suffixes .svc, wie es in der Anforderungsfilterung zulässig ist, hat den Trick für mich getan.
quelle
Keine der oben genannten Lösungen hat diesen Fehler für mich behoben. Ich musste in web.config Folgendes einstellen:
Ich möchte diese Gelegenheit nutzen, um Microsoft noch einmal zu verfluchen, weil es so ein großes Durcheinander mit .NET Framework verursacht und das Leben der Entwickler so lange so miserabel gemacht hat!
quelle