Hallo Ich möchte einige Daten von Silverlight auf einer Website veröffentlichen.
Ich fand die folgenden link und es funktioniert ...
Allerdings .... Dieses Beispiel war so aufwendig, dass es meine Augen schmerzte.
.. Auch das flex Beispiel wurde viel sauberer/weniger Code ..
ich es sagen würde, eine bessere Lösung ... Silverlight HTTP POST einige Variablen, SIMPLEST Beispiel (am wenigsten Code)
Als Referenz
sein müssen .. Wir veröffentlichen zwei Variablen (Strings) und lesen aus dem Ergebnis (String).Die Lösung aus dem Link:
1. // C#
2. // Create a request object
3. HttpWebRequest request = (HttpWebRequest)WebRequest.Create(new Uri(POST_ADDRESS, UriKind.Absolute));
4. request.Method = "POST";
5. // don't miss out this
6. request.ContentType = "application/x-www-form-urlencoded";
7. request.BeginGetRequestStream(new AsyncCallback(RequestReady), request);
8.
9. // Sumbit the Post Data
10. void RequestReady(IAsyncResult asyncResult)
11. {
12. HttpWebRequest request = asyncResult.AsyncState as HttpWebRequest;
13. Stream stream = request.EndGetRequestStream(asyncResult);
14.
15. // Hack for solving multi-threading problem
16. // I think this is a bug
17. this.Dispatcher.BeginInvoke(delegate()
18. {
19. // Send the post variables
20. StreamWriter writer = new StreamWriter(stream);
21. writer.WriteLine("key1=value1");
22. writer.WriteLine("key2=value2");
23. writer.Flush();
24. writer.Close();
25.
26. request.BeginGetResponse(new AsyncCallback(ResponseReady), request);
27. });
28. }
29.
30. // Get the Result
31. void ResponseReady(IAsyncResult asyncResult)
32. {
33. HttpWebRequest request = asyncResult.AsyncState as HttpWebRequest;
34. HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asyncResult);
35.
36. this.Dispatcher.BeginInvoke(delegate()
37. {
38. Stream responseStream = response.GetResponseStream();
39. StreamReader reader = new StreamReader(responseStream);
40. // get the result text
41. string result = reader.ReadToEnd();
42. });
43. }
Das sieht viel besser aus. Ich werde es ausprobieren .. –