| 

.NET C# Java Javascript Exception

2
Wir haben eine Anwendung geschrieben, die unsere Kundenkonstakte verwalten soll. Diese WinForms-VB.NET-Appl. benutzt für den Datenzugriff einen eingens geschriebenen BindingSource Mechanismus, da wir VPN-optimiert arbeiten wollen.

Nun wäre es hilfreich, wenn verschiedene Instanzen der Anwendung mitbekommen könnten, dass sich ein Datensatz geändert hat.

Leider funktioniert das Konzept mit den Query notifications nicht mit unserer VPN-Optimierung da dise das Statement IN (...) nutzt, was nicht zulässig ist. Man bekommt dann in dem SqlDependencyOnChange-Event 'Invalid Statement' geworfen.

Daher meine Frage: Auf welchen Weg kann ich einer Anwendung mitteilen, dass sich die Daten, die sie grade benutzt, verändert haben und daher neu geladen werden müssen. Besonders nett wäre dass, wenn man Datensätze hinzufügt und diese dann auch bei den anderen erscheinen sollen
19.05.2011
MyKey0815 1,6k 2 9
3 Antworten
2
Ich hab Zyan bereits für eine ähnliche Aufgabe verwendet.

"Zyan ist ein Framework für die einfache Erstellung von verteilten Anwendungen. Erstellen Sie ganz einfach Applikationen, deren Komponenten entweder über ein LAN oder über das Internet miteinander kommunizieren. Zyan ist sehr einfach einzusetzen und hochgradig anpassbar. Außerdem unterstützt Zyan auch Event Based Components!"

Grüße

CBMUENCHEN
20.05.2011
CBMUENCHEN 41 1
danke für den Link. Dieser scheint dafür eine Lösung darzustellen.

Eine Beschreibung, wie ihr "die ähnliche Aufgabe" gelöst habt, hast du nicht noch zufällig? *gggg*
MyKey0815 20.05.2011
Leider nicht. :-) Aber das ganze ist sehr leicht (siehe Chat-Demo).
CBMUENCHEN 23.05.2011
Beispiele zur Zyan-Programmierung findest Du im Code-Repository von Zyan unter http://zyan.codeplex.com/SourceControl/list/changesets im Order examples.

Wenn Du Fragen zu Zyan hast, kannst Du diese gerne im Zyan-Diskussionsforum stellen: http://zyan.codeplex.com/discussions
Rainbird 13.06.2011
1
Ich habe das schon mal mit SendMessage gelöst, einfach eine WM_USER-Message an die entsprechenden Fenster geschickt.
Eine andere Möglichkeit wären ev. über Remoting, Änderungen in ein File schreiben und einen Filewatch aufsetzen.
19.05.2011
Tosch 216 5
Das SendMessage würde ja nur dann funktionieren, wenn die Instanzen auf dem selbem PC laufen. Oder kann man diese Messages auch übers Netzwerk an andere Instanzen auf an deren PCs senden?

Würde das SendMessage in der der Applikation oder auf dem SQL-2008 server integriert werden damit alle es mitbekommen?
MyKey0815 19.05.2011
1
Sendmessage funktioniert natürlich nur lokal auf dem gleichen PC. Da du verschiedene Instanzen angesprochen hast, nahm ich an, dass diese auf der gleichen Maschine laufen.
Sonst wirds natürlich etwas schwieriger und ich sehe auch nicht sofort eine Lösung.
19.05.2011
Tosch 216 5
Es trifft beides zu: Zum einen verschiedene Instanzen auf dem SELBEN PC aber auch Instanzen auf verschiedenen Rechnern
MyKey0815 19.05.2011
SendMessage ja, aber was wäre mit MessageQueue?
nabuchodonossor 19.05.2011
MessageQueue hat den Nachteil, dass man das erst auf allen PCs installieren und konfigurieren muss. Die API ist außerdem nicht unbedingt ein Ausbund von Komfort.
Rainbird 13.06.2011

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH