Ich bin zwar großer Fußballfan, aber in keiner Fußball-Community angemeldet, weil es mich einfach nicht reizt, mich online mit anderen über Fußball auszutauschen (das passiert alles schon im realen Leben!).
Trotzdem ein paar Worte zu deinem Projekt:
Nach dem Klick auf den Link deines neuen Portals hatte ich nicht den Eindruck, dass es bei diesem Portal um Fußball geht. Das Design ist zwar schlicht gehalten (weniger ist oft mehr, von daher OK), aber irgendwie fehlt mir das Fußball-Gefühl! Es könnte im Prinzip alles mögliche hinter KickCom stehen, daher nur der Vorschlag von mir, zumindest der Startseite einen hauch Fussball-Design zu verpassen. Ob das nun ein i-Punkt (im "Kick") in Form eines Fußballs oder irgendetwas anderes ist, ist natürlich deine Entscheidung, aber meiner Meinung nach motiviert die aktuelle Startseite nicht gerade, sich dort anzumelden.
nur kein Stress ;) ... also aktuell fällt mir kein sinnvoller Einsatz (für mich) des Tool's ein, aber an irgendeiner Stelle irgendwo ist sowas sicherlich sinnvoll. Ist halt nur die Frage, ob dein Tool den Weg genau zu diesen Anwendern findet, die es benötigen (könnten). Ich wollte einfach mal testen, da ich gerne durch die Projekt-Ecke stöbere :)
Habe gerade die WPF-Anwendung mal testen wollen.. aber dort gibt's (im Gegensatz zum ersten Entwurf) keine Möglichkeit, den Pfad über "Durchsuchen" auszuwählen, d.h. man müsste den Pfad per Hand eintippen?! Das wäre sehr unpraktisch :)
Ich bin gerade ein wenig am Testen und die ersten Dinge, die mir aufgefallen sind:
1. Wenn ich eine SQL-Datenquelle hinzufügen will (in meinem Fall eine MS SQL-Datenquelle), dann hängt der Mauszeiger teilweise/ruckelt teilweise ca. 3-4 Sekunden und man hat das Gefühl, dass irgendwas nicht so richtig passt, bis das Fenster aufgeht, in dem die Datenquellen dann auswählbar sind. Das ist zwar nur eine Schönheitskorrektur, aber ich fände es viel besser, wenn erst das Fenster mit der SQL-Serverauswahl aufgehen würde und zu Anfang sowas wie "Server werden gesucht.." in der Combobox steht, bis die SQL-Server gefunden wurden (danach ist dann natürlich die Auswahl in der Combo möglich..) Zusätzlich vielleicht während der Suche den Mauszeiger noch in die Sanduhr verwandeln.
2. Ich habe meine Datenquelle hinzugefügt und mir eine Tabelle anzeigen lassen. Mit rechter Maustaste auf eine Spalte kann man "Ändern wählen", allerdings stürzt bei mir das Programm dann ab (Meldung "An der Position 0 befindet sich keine Zeile").
3. Ich bekomme immer nur die erste Zeile meiner Tabellen angezeigt. Die Spalten sind alle da; doch egal wieviel Zeilen die Tabelle beinhaltet, es wird immer nur die erste angezeigt.
Falls iwas der 3 Punkte schon angesprochen wurde -> Sorry. Habe nicht alle Posts gelesen!
Hört sich gut an, aber wenn ich in eine Url eines youtube-Videos eingebe und "get links" klicke, bekomme ich immer ein "sorry.. nichts gefunden" .. mache ich etwas falsch? woran kann's hängen?
Also bei mir sucht er _immer_ bei youtube, ganz egal, welchen Haken ich setze?!
Irgendwie finde ich noch kein nutzen dafür, da eine solche suche in jedem aktuellen Browser integriert ist. Anstatt also dein Programm zu starten, kann ich auch einen Browser starten, meinen Suchbegriff eintippen und ENTER drücken. Da spare ich mir im Prinzip sogar ein oder zwei Klicks.
Ich kann mich da nur anschließen. Es mag vielleicht Handy's geben, die mit den Funktionalitäten des iPhone's gleich auf sind, aber kein Hersteller hat es geschafft, das alles so Benutzerfreundlich und einfach zu verpacken. Es funktioniert einfach, 0 Probleme.
i <3 my iPhone.
Und um der Frage im ersten Post nachzukommen: seit ich gelesen habe, dass Copy&Paste weggelassen wird, habe ich keine weiteren Infos mehr darüber gelesen. Selbst Apple hat nach vielen Forderungen Copy&Paste eingebaut.. spätestens dann muss man doch einsehen, dass eine solche Funktion notwendig - aber vorallem Standard sein muss.
Ich habe Medizininformatik studiert und meine Diplomarbeit in einem Klinikum (IT-Abteilung, C#-Projekt) geschrieben. Nach dem Studium wurde ich unbefristet übernommen und arbeite seither etwas mehr als 1 Jahr offiziell als IT-Systemadministrator, allerdings ist das Einsatzgebiet aufgrund einer vorhandenen Unterbesetzung der IT praktisch unbegrenzt (Netzwerk/Server/SQL/Oracle/Projekte/Programmierung/Tägliche Probleme in der Krankenhaus-IT/uvm.) - was nicht immer schlecht ist.
[..]Ggf. sollte man die Erreichbarkeit noch mit einer Zeitspanne arbeiten, also z.B. erst nach 1min. sperren.
Sehe ich auch so, oft holt man in einem größeren Raum/Büro mal eben seinen Kaffee ;) ... und kommt zurück (PC war immer in Sichtweite) und muss das Passwort eintippeln.
Eleganter wäre außerdem, wenn man das Passwort verschlüsselt irgendwo im Programm ablegen kann, sodass der Rechner automatisch wieder entsperrt wird, sobald man wieder "in Reichweite" ist.
Selber nutzen würde ich es aber wahrscheinlich nicht, denn wie gesagt, Win+L ist schon tief verankert in meinem vom-PC-aufsteh-Prozess ;)
Aktuell ist mir noch folgendes aufgefallen: Wenn ich im Suchfenster einen Kontakt eintippe (z.B. Nachname), wird dieser gefunden -> soweit OK. Wenn ich nach dem Eintippen des Namen's ENTER drücke, hängt sich das Programm komplett weg und Outlook meldet, dass eine Software versucht, auf die Kontaktdaten zuzugreifen (mit Abfrage, ob ich dies erlauben will; Abfragefenster erscheint aber erst, wenn ich Outlook2Desktop via Taskmanager beende).
Andersrum gesagt: Ich fände es sehr hilfreich, wenn man nach Eintippen des Namens direkt ENTER drücken kann, um den Kontakt zu öffnen (es sei denn, es wurden mehrere gefunden).
Aber ansonsten bin ich sehr zufrieden, gute Arbeit
Update: Habe nun gemerkt, dass mein oben beschriebenes Anliegen mit der ENTER-Taste bereits funktioniert. Das Problem ist, dass diese Outlook-Zugriffsmeldung immer kommt, sobald ich über das Suchfenster einem gefundenen Kontakt eine Mail schreiben will (Outlook2Desktop hängt sich dann weiterhin auf, weil es wohl auf die Eingabe der Frage wartet, welche man aber nicht sieht, bis man O2D manuell schließt). Das passiert also nur, wenn man einen Kontakt gesucht hat und auf "Email schreiben" klickt.. öffnen kann man den Kontakt ohne Probleme.
eveN
Edit: Das von CSL angesprochene Feature zum Ausblenden der nichtbenötigten Buttons im Schnellzugriffsfenster wäre natürlich auch noch eine feine Sache, aber kein muss.
beim durchlesen erschien mit das Tool sehr nützlich, daher habe ich es mal kurz angetestet.
Aufgefallen sind mir direkt zwei Punkte, die mich persönlich etwas stören. Ich verwende Win XP SP3, 1280x1024, weshalb wohl der "Schönheitsfehler" zustande kommt (?!)... Problem: das "Email schreiben" im Suchfenster auf den Buttons passt nicht ganz auf den Button und sieht damit unschön aus (siehe Screenshot/Anhang).
2.Problem: Wenn ich über das Symbol im Tray gehe (Rechtsklick) und dort auf "Neue Email" klicke, passiert einfach nichts. Neuer Kontakt, Neue Aufgabe etc. funktioniert alles, aber "Neue Email" bleibt wirkungslos. Über das Schnellzugriffsfenster funktioniert der "Neue Email"-Button.
Achja, da fällt mir noch ein, es wäre super, wenn man das Schnellzugriffsfenster mit einem X schließen kann und es über das Tray-Symbol-Menü direkt ein- und ausblenden könnte, ohne immer in die Einstellungen zu müssen.
Ansonsten schonmal eine super Sache, danke dafür! :)
symptomatisch kannst du das problem für den kunden erstmal so lösen, das du die exception abfängst und nach einem kurzen sleep, die message einfach neu sendest.
Zitat von Florian Reischl
Hallo eveN
Ich würde - wenn möglich - auch die vorherige Aktion einfach nochmal ausführen. Das ist durchaus ein valides Vorgehen bei Deadlocks.
Ja, da werd ich dann wohl auf die schnelle nicht drum herum kommen.
Den Profiler gibt's ja nicht für die Express Edition, oder?
Kurzes googlen hat gerade einen Profiler von "AnjLab" [link] für sql server 2005 express ausfindig gemacht, den werde ich dann mal testen!
Unabhängig von alledem hab' ich vorhin noch etwas von WITH(NOLOCK) gelesen, sprich z.B.
Hab' eigentlich auch alle Einstellungen in der DB gespeichert und noch nie Probleme damit gehabt. Zuvor hab' ich eigene .ini-Dateien genutzt, ist ja relativ einfach zu coden und hatte auch damit nie Probleme!
verwendetes Datenbanksystem: SQL Server 2005 Express
Guten Morgen!
Ich komme gleich zur Sache:
Meine Anwendung arbeitet mit ServiceBroker. Ungefähr 30 Clients arbeiten mit einer Tabelle, wobei ca. alle 2-3 Minuten Daten geändert werden. Updatet also ein Client diese Tabelle, werden alle anderen Clients mehr oder weniger gleichzeitig von der DB informiert und laden sich automatisch via
sqlDataAdapter.Fill(dataSet, TabelleName);
die aktualisierte Version der Tabelle in ein DataSet (DataSet deswegen, weil zusätzlich noch eine weitere Tabelle geladen wird, welche aber nicht via ServieBroker überwacht wird). Die Tabelle selbst ist nicht sonderlich groß. Sie hat ca. 20 Spalten und die Zeilenanzahl variiert immer zwischen 0 und ~ 30.
Problem:
Es gibt Tage, an welchen alles prima läuft. Allerdings gibt es auch Tage, an denen am Tag mehrfach Deadlocks auftreten, wenn die Clients ihre Daten aktualisieren wollen:
Zitat
Message:Die Transaktion (Prozess-ID 68) befand sich auf Sperre Ressourcen aufgrund eines anderen Prozesses in einer Deadlocksituation und wurde als Deadlockopfer ausgewählt. Führen Sie die Transaktion erneut aus.
Scheinbar zufällig sind es dann im Laufe des Tages 3 oder mal eben 8 Clients, an welchen dann die Meldung kommt. Manchmal ist es sogar nur einer. Bei der nächsten Aktualisierung der Tabelle ein paar Minuten später tritt dann zu 99% aber kein Deadlock mehr auf und alles läuft ein paar Stunden einwandfrei. Es ist aber nur eine Frage der Zeit, bis der Deadlock wieder eintritt.
Nachdem ich jetzt so einiges gelesen habe, bin ich mir unsicher, wie ich das Problem am besten löse(n könnte), vorallem, weil ich die Deadlocks nicht ohne weiteres reproduzieren kann.
Hier im Forum sowe in meinen Büchern bin ich mehrfach über das SNAPSHOT-Isolation Level gestolpert, welches ja nicht mehr mit Locks arbeitet, sondern eine Versionsverwaltung führt. Da frage ich mich, ob das bei meinen ~30 Clients Sinn macht, oder nicht....
Hat da jemand Erfahrungswerte/Berichte?
Oder gar andere Vorschläge, das Problem anzugehen... ?
Ich könnte natürlich auch die betroffenen Transaktionen erneut ausführen, nur erscheint mir das irgendwie unsauber :|
verwendetes Datenbanksystem: MS SQL Server 2005 Express
Guten Morgen!
Meine Applikation nutzt ServiceBroker und umfasst ca. 30 Clients. Im Ereignisprotokoll des Servers, auf welchem die Datenbank läuft, erhalte ich täglich mehrmals folgende Meldung des SQL Server's:
Zitat
Service Broker muss auf den Hauptschlüssel in der 'xyz'-Datenbank zugreifen. Fehlercode:25. Der Hauptschlüssel muss vorhanden sein, und die Verschlüsselung für den Diensthauptschlüssel ist erforderlich.
Ich habe bis jetzt noch keinen Datenbankhauptschlüssel (Master Key) festgelegt.
Aus praktischen Gründen lässt Service Broker zu, dass sichere Konversationen, die innerhalb einer einzelnen Datenbank verbleiben, fortgesetzt werden, unabhängig davon, ob die Datenbank einen Hauptschlüssel enthält oder nicht.
D.h. für mich, ich könnte diese Meldung ignorieren, da ich nur mit einer DB arbeite. Allerdings würde ich nun gerne im nachhinein einen Master Key festlegen, um die Meldung aus dem Ereignisprotokoll zu verbannen. Ich weis, wie das geht, nur frage ich mich, ob das festlegen eines Master Keys während dem laufenden Betrieb irgendwelche gravierenden Auswirkungen hat/haben könnte?! Dazu konnte ich leider nichts finden.
(Ich weis nicht, ob ich evtl. die falschen Stichwörter bei der Suche verwendet habe... jedenfalls blieb die Suche erfolglos.)
Ich würde gerne meine Applikation nach x Minuten ohne User-Aktivität abmelden. D.h. ich muss irgendwie die User-Eingaben überwachen, welche Eingaben das genau sind, ist egal.
Muss ich dafür wirklich einen Timer einbauen und diesen bei jedem Button-Click o.ä. zurücksetzen, oder gibt's da etwas eleganteres?
Ich würde die erste Abfrage in eine DataTable schreiben und diese dann durchsuchen.. beim anschließenden suchen kannst du dann bequem und schnell die DataTable durchsuchen.
@all: Wenn das quatsch ist, siehe meine Sig.
Wenn die Daten dann bei bestimmten Suchen Top-Aktuell sein müssen, würde ich die DataTable mit den Daten der DB erneut füllen.
Falls du immer die aktuellsten Daten brauchst, würde mich ebenfalls interessieren, wie man das am besten löst :)
ich mische mich nur ungerne ein, gerade wenn Rainbird schon beteiligt ist ( da lerne ich beim mitlesen immer dazu :) ).
Aber ich habe mich vor kurzem mit einem ähnlichen Thema beschäftigt habe, sprich mehrere Clients und eine solche Statusliste mit Aufträgen, welche auf den Clients immer aktuell gehalten werden soll. Letztendlich habe ich mich dann für den ServiceBroker-Dienst des SQL-Server 2005 (auch in der Express-Edition verfügbar) entschieden, die Funktionsweise hat Rainbird ja schon beschrieben:
Zitat von Rainbird
der zentrale Dienst auf dem Server kann die Clients per Callback (das funktioniert sowohl mit Remoting, als auch mit WCF) benachrichtigen, wenn sich am Status eines Produktionsauftrags etwas ändert, oder wenn ein neuer Auftrag eingebucht wurde. Die Clients müssen dazu eine Methode bereitstellen, die der Server aufrufen kann, um über Änderungen zu benachrichtigen. Jeder Client registriert sich beim Produktionsauftrags-Dienst und übergibt einen Verweis auf die Rückrufmethode an den Server, damit dieser über Änderungen benachrichtigen kann.
Dabei wird ja nur meine Tabelle 'Aufträge' der Datenbank auf Änderungen überwacht, etc.
Dazu kann ich nur sagen, dass es (bisher) super funktioniert, allerdings spreche ich hier von einer DataTable mit meisstens ~ 40 Einträgen. Natürlich mal etwas mehr und etwas weniger. Gelöschte Datensätze schreibe ich via Trigger in eine extra Tabelle der Datenbank. Die Problematik der beschriebenen "Löschliste" kann ich also nicht ganz nachvollziehen. Ressourcentechnisch (ca. 35 Clients) gibt es da bisher ebenfalls keine Probleme, allerdings wird auch nicht durchgehend an allen Clients gearbeitet, sondern ~immer alle 2-3 Minuten sind "ein paar" aktiv. Ob das für dich in Frage kommt, musst du selbst entscheiden. Wollte das nur mal kurz beschreiben, um a) evtl. noch etwas dazu zu lernen (aber nicht in diesem thread) und natürlich b) dir bei interesse mehr infos zur umsetzung zu geben.
Ich muss dazu sagen, dass ich noch keinen anderen Weg gegangen bin und mich interessehalber auch mal mit dem "Deltadaten"-Ansatz auseinander setzen möchte.