Entwickler-Ecke
WPF / Silverlight - Problem mit dem Webclient in Silverlight
Anti - Sa 07.08.10 23:29
Titel: Problem mit dem Webclient in Silverlight
Hi,
ich habe das Problem, dass der WebClient, den ich in Silverlight erzeuge, irgendwie keine Strings herunterlädt.
Also ich starte den asynchronen Aufruf: "DownloadStringAsync"
C#-Quelltext
1: 2: 3: 4:
| System.Net.WebClient webclient = new System.Net.WebClient(); webclient.DownloadStringCompleted += new System.Net.DownloadStringCompletedEventHandler(webclient_DownloadStringCompleted); webclient.DownloadProgressChanged +=new System.Net.DownloadProgressChangedEventHandler(webclient_DownloadProgressChanged); webclient.DownloadStringAsync(new Uri("http://XXXX.XXXX.de")); |
jedoch wird weder das Event "DownloadStringCompleted" noch das "DownloadProgressChanged" aufgerufen! Auch kommt keine Fehlermeldung oder sonstiges.
An was könnte das liegen?
MFG
Anti
Kha - Sa 07.08.10 23:47
Speichere die Instanz lieber in einem Klassenfeld, vielleicht kommt dir der Garbage Collector dazwischen.
Anti - So 08.08.10 01:13
Wow! Danke für die schnelle Antwort!!
Hab jetzt alles in eine Klasse gepackt und siehe da es geht^^ naja so halb^^
jetzt kommt die Fehlermeldung:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| System.Security.SecurityException ---> System.Security.SecurityException: [Arg_SecurityException] Argumente: Debuggingressourcen-Zeichenfolgen sind nicht verfügbar. Oft enthalten der Schlüssel und die Argumente genügend Informationen zur Diagnose des Problems. Weitere Informationen erhalten Sie unter http://go.microsoft.com/fwlink/?linkid=106663&Version=4.0.50524.0&File=mscorlib.dll&Key=Arg_SecurityException bei System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult) bei System.Net.Browser.BrowserHttpWebRequest.<>c__DisplayClass5.<EndGetResponse>b__4(Object sendState) bei System.Net.Browser.AsyncHelper.<>c__DisplayClass2.<BeginOnUI>b__0(Object sendState) --- Ende der internen Ausnahmestapelüberwachung --- bei System.Net.Browser.AsyncHelper.BeginOnUI(SendOrPostCallback beginMethod, Object state) bei System.Net.Browser.BrowserHttpWebRequest.EndGetResponse(IAsyncResult asyncResult) bei System.Net.WebClient.GetWebResponse(WebRequest request, IAsyncResult result) bei System.Net.WebClient.DownloadBitsResponseCallback(IAsyncResult result) |
ich hab dazu jetzt in der msdn folgendes gefunden:
http://msdn.microsoft.com/en-us/library/cc645032%28v=VS.95%29.aspx jedoch hab ich nich ganz durchgeblickt^^
so wie ich das jetzt gelesen/verstanden hab muss eine Codedatei oder eine xml datei irgendwo abspeichern die den Zugriff erlaubt.
Nur wo/mit welchem namen muss ich die abspeichern? und muss ich in dieser Datei jede Seite, von der ich etwas runterladen will, extra vermerken?
Danke für die Hilfe
MfG
Anti
Kha - So 08.08.10 11:08
Ich zitiere mal für dich ;) .
Zitat: |
The Silverlight runtime first tries to download a Silverlight policy file with a name of "clientaccesspolicy.xml" at the root of the requested target domain using the HTTP protocol. |
Die Datei muss also auf dem
Ziel-Server liegen, alles andere wäre ja sinnlos.
Anti - So 08.08.10 17:48
ah ok, vielen Dank!
genau das hab ich gesucht^^ es funktioniert jetzt alles.
Hatte anfangs gedacht, die clientaccesspolicy.xml müsste nur auf dem server sein, auf dem die Silverlight-App läuft
(weil ich ja auch so unter Win-Forms, mit dem Webclient, daten von anderen Seiten laden kann ohne das sie eine solche clientaccesspolicy.xml haben),
aber so machts etwas mehr Sinn^^
Den Teil hab ich wohl Anfangs überlesen.
Gruß Anti
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!