Ich habe eine sehr einfache Beispiel-Silverlight-Anwendung. Ich habe einen Domänenservice mit einem Entitätsmodell hinzugefügt, das über eine Entität verfügt. Die Client-App lädt beim Start alle Zeilen der Entity. Wenn ich das auf meiner Entwicklungsbox ausführe, funktioniert es wie erwartet. Wenn ich es jedoch auf unseren Testserver verschiebe, bekomme ich eine Ausnahme, die besagt, dass die Methode, die ich anrufe, nicht gefunden werden kann (Ladeoperation für Abfrage 'GetCTCStation' fehlgeschlagen. Der entfernte Server hat einen Fehler zurückgegeben. NotFound.). Als ich die Client / Server-Kommunikation näher mit Fiddler inspizierte, fand ich heraus, dass die Anfrage zu Ссылка URL] / ClientBin / SilverlightApplication7-Client geht -Web-CTCService.svc / binary . Ich habe den Domain-Service dem Root des Webprojekts hinzugefügt, daher verstehe ich nicht, warum der Client im ClientBin-Verzeichnis danach sucht. Es ist offensichtlich nicht da. Was mache ich hier falsch? Ich hatte nie Probleme mit der Juli-Vorschauversion von RIA.
Es ist relativ, aber das wird automatisch in der Generated_Code-Datei behandelt. Und es gibt nichts in der Webconfig zu konfigurieren. Ich habe die Standardeinstellungen beim Erstellen eines Domain-Service verwendet. Ich habe versucht, das uri beim Instanziieren des Dienstes explizit zu setzen und die gleiche Ausnahme aufgetreten.
Nach langem Ringen und dem Ausprobieren vieler verschiedener Möglichkeiten habe ich endlich die Lösung gefunden. Dieser Beitrag war der Schlüssel :
Grundsätzlich wurden beim Veröffentlichen des Projekts einige DLLs nicht in den Ordner bin aufgenommen. Stellen Sie unter Referenzen sicher, dass die folgenden DLLs ordnungsgemäß eingerichtet sind (Stellen Sie sicher, dass System.ComponentModel.DataAnnotations auf C: \ Programme \ Microsoft SDKs \ RIA Services \ v1.0 \ Libraries \ Server \ System.ComponentModel verweist. DataAnnotations.dll ):
System.ComponentModel.DataAnnotations und jede DLL, die mit System.Web beginnt, muss "Copy Local" auf true gesetzt haben.
Erstellen Sie das Projekt und veröffentlichen Sie es erneut. Das hat das Problem für mich behoben.
Ich möchte allen danken, die zur Lösung dieses Problems beigetragen haben (in diesem Thread und anderen).
1) Auf welchen IIS plündern Sie? Wenn & lt; 7 Sie benötigen Hotfix
2) Fügen Sie alle Ihre RIA-Assemblys hinzu (Set Copy Local = & gt; True) Einschließlich:
System.Web.Ria
System.Web.DomainServices. (es gibt vier davon, je nachdem, was Sie verwenden)
3) Dies kann darauf zurückzuführen sein, dass Ihr Knoten in Ihrer ASPNET-Anwendung auf Windows gesetzt ist, Ihre Site jedoch in IIS auf Anonym eingestellt ist. Bei den meisten wird der Fehler einfach durch Ändern des Knotens in mode="Forms" behoben und Sie können fortfahren. Wenn Ihre IIS-Konfiguration für die Verwendung von Integrated Auth und Anonymous konfiguriert ist, sollten Sie in der Einstellung "Verzeichnissicherheit" für die Site in der IIS-Verwaltungskonsole eines deaktivieren.
Microsoft empfiehlt auf MSDN , dass Ria-Dienste installiert werden auf dem Server.
Es wird empfohlen, RIA Services auf dem Webserver zu installieren das hostet Ihre Anwendung.
Hier ist ein Trick , der wahrscheinlich die meisten Menschen vor dieser Lösung zurückschrecken sehen wird. Die Installation listet standardmäßig eine Reihe von Voraussetzungen auf, die Sie normalerweise nicht auf dem Server installieren möchten.
Voraussetzungen Überprüfen Sie
Die folgenden erforderlichen Komponenten fehlen:
- Microsoft Visual Studio 2010 oder neuer oder Visual Web Developer 2010
- Express Microsoft Silverlight 4 Developer Runtime oder neuer Microsoft
- Silverlight 4 SDK oder Microsoft Silverlight 5 SDK
Das Ausführen der Installation mit dem Befehlszeilenargument SERVER=TRUE
wird umgangen diese Überprüfung.
msiexec / i RiaServices.msi SERVER = WAHR
Ich würde auch empfehlen, dass Sie diese Lösung verwenden, da keine spezielle Konfiguration für eine bestimmte Gruppe von DLLs erforderlich ist, die sich in zukünftigen Versionen ändern können. Außerdem wird der Veröffentlichungsprozess etwas schneller sein, da diese Dateien nicht enthalten sind.
Beachten Sie auch, dass Sie das Web-Plattform-Installationsprogramm verwenden können, um Ria-Dienste auf einem Server zu installieren 'Installation von WCF RIA Services Server für .Net Framework 4.0' , die die gleiche Wirkung wie der Schalter SERVER=TRUE
hat. Leider ist dies nur Version 1 und Service Pack 2 fehlt.
In meinem Fall bestand die Lösung darin, die Eigenschaft "Copy Local" der folgenden Assemblys aus dem Referenzordner der WebSite auf "True" zu setzen:
%Vor%Wenn alles nach dem nächsten Neuaufbau korrekt ist, werden diese Assemblies in den bin-Ordner Ihres Projekts kopiert.
Was ist gut, jede nützliche Konfiguration von IIS 7 habe ich nicht durchgeführt.
Auch bei diesem Problem (RIA gibt "Not Found" zurück), aber in meinem Fall war es, dass meine Anfrage mehr Zeilen zurückgab, als über maxitemsinobjectgraph erlaubt war. Meine vorübergehende Lösung bestand darin, .Take (5000) hinzuzufügen, um die Ergebnismenge zu reduzieren, aber eine permanente Auflösung erfordert, dass der maxitemsinobjectgraph wie unten beschrieben erweitert wird. Hoffe das hilft jemand anderem aus ...
%Vor%Beachten Sie, dass der Standardwert Int32.MaxValue oder 2.147.483.647
istFür mich war die Authentifizierung in IIS nicht auf "Anonym" eingestellt. Ich benutzte Fiddler, um die generierte RIA SCV URL zu erhalten und öffnete dann die URL in einem Browser. Die Nachricht war ziemlich explizit.
Ich musste nur anonymen Zugriff erlauben, den Anwendungspool neu starten und alles hat wie erwartet funktioniert.
WCF RIA Services VS 2008-Bereitstellungsfehler
Es gibt viele nette Beiträge im Netz und das beste scheint hier (Danke Tim)
Obwohl alle von mir gefundenen Postings in irgendeiner Weise nützlich waren, war die endgültige Lösung in meinem Fall die ungeeignete DB-Verbindungszeichenfolge. Obwohl der VS-generierte DB-String innerhalb von VS funktionierte, konnte ich ihn nicht auf meinem QA-Server bereitstellen, bis ich ihn so zurechtgeschnitten habe:
%Vor%WCF RIA Services VS 2008-Bereitstellungsfehler Hier ist die Lösung, nach der Sie suchen, zum Download Beispiel und überprüfen Sie Ihre Selbst leben WCF RIA (Vs2008) Service.
Tags und Links wcf silverlight wcf-ria-services ria