Kein RaiseEvent in/mit WCF-Service?

22/03/2009 - 23:11 von Andreas Mahub | Report spam
Hi Leute,

ich hatte mich schon vor ein paar Monaten mit WCF beschàftigt, bin dann
wieder davon abgekommen und fange jetzt wieder an. Ich habe mir dafür das
Buch "WCF" von Jürgen Kotz und Stephanie Hölzl gekauft.

Einen "Schrecken" habe ich heute bekommen, als ich im Index unter E nach
Events gesucht hatte. Unter R war auch nichts von RaiseEvent zu finden. E
wie Ereignisse, seufz, nichts. Hoppla dachte ich.

Es gibt zwar Beispiele, die sind aber sehr komplex. Also nicht die
Beispiele, sondern die Vorgehensweise und die Möglichen Techniken. Dabei
sind mir Begriffe um die Ohren geflogen, wo ich teilweise dachte, ich stehe
in einer komplett anderen Welt.

Kann mal bitte einer versuchen mir zu sagen, welches für mich das richtige
ist? Ich will mal folgendes Szenario dabei versuchen darzustellen.

Wir haben 4 Computer im Netzwerk. Auf einem Computer làuft ein Player
(geschrieben unter VB.Net 2008 und VS2008 Prof.). Jetzt möchte ich einen
kleinen Client schreiben, der auf den anderen 3 Rechnern im Netzwerk
anzeigt, welcher Titel gerade làuft, welcher als nàchstes kommt und wie
lange der aktuelle Titel noch làuft.

Gleich vorweg, dass habe ich schon 2007 gemacht, allerdings mit Remoting und
auch recht "Stümperhaft" mit Hilfe des Timers der alle 100ms den
Hauptrechner per Remoting abgefragt hat.

Jetzt wollte ich das gleiche mit WCF machen ABER DEN TIMER weglassen.
Sprich: Wenn der Hauptrechner (wo der Player mit dem WCF-Dienst làuft) einen
neuen Titel angibt, sollen andere Rechner darüber informiert werden. Hier
wollte ich es EIGENTLICH so machen: Programm meldet an Dienst
MeinDienst.Titel = "Neuer Titel". Die Routine Titel im Dienst MeinDienst
sollte jetzt ein RaiseEvent machen welche die drei Clients empfangen und
sich sagen "Ahhh, neuer Titel soll angezeigt werden, na dann aktualisiere
ich mal das Label".

Ja, dass das wohl nicht so geht habe ich jetzt mitlerweile auch begriffen.
Kann mir da einer bitte auf die Sprünge helfen wo ich es àhnlich wie meinem
Szenario das ganze nachvollziehen kann?

Gruß
Andy
 

Lesen sie die antworten

#1 Elmar Boye
23/03/2009 - 00:38 | Warnen spam
Hallo Andreas,

"Andreas Mahub" schrieb ...
ich hatte mich schon vor ein paar Monaten mit WCF beschàftigt, bin dann wieder davon abgekommen und fange jetzt wieder an. Ich
habe mir dafür das Buch "WCF" von Jürgen Kotz und Stephanie Hölzl gekauft.


Einen "Schrecken" habe ich heute bekommen, als ich im Index unter E nach Events gesucht hatte. Unter R war auch nichts von
RaiseEvent zu finden. E wie Ereignisse, seufz, nichts. Hoppla dachte ich.



Falscher Suchbegriff, da wàre Callback (deutsch wohl Rückruf)
angebrachter. Mehr dazu:

http://msdn.microsoft.com/en-us/mag...63537.aspx
What You Need To Know About One-Way Calls, Callbacks, And Events

Fall Du Deine Erstlektüre nicht erschöpfend findest:
Nàmliches Autor hat ein IMO sehr gutes - englisches Buch
geschrieben, einige Abschnitte finden sich im MSDN Magazine:
http://msdn.microsoft.com/en-us/mag...01087.aspx

Wir haben 4 Computer im Netzwerk. Auf einem Computer làuft ein Player (geschrieben unter VB.Net 2008 und VS2008 Prof.). Jetzt
möchte ich einen kleinen Client schreiben, der auf den anderen 3 Rechnern im Netzwerk anzeigt, welcher Titel gerade làuft, welcher
als nàchstes kommt und wie lange der aktuelle Titel noch làuft.



Na, wenn das nicht ein Hauen und Stechen gibt -
Was ist wenn die vier Personen vor den Computern
sich nicht auf die Titel, die Lautstàrke etc.
einigen können ?-)

Im Ernst: Man kann es mit WCF realisieren.
Das typische Anwendungsszenario ist es aber nicht.
Der obige Artikel sollte Dir einen Weg dafür aufzeigen.

Gruß Elmar

Ähnliche fragen