Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von spike24
Thema: Verbesserungsvorschläge für Architektur (Data Access Layer, Repository)
Am im Forum: Rund um die Programmierung

Hi,

Zitat von Doltsche
Zitat
Das funktioniert nur solange, wie der Entwickler absolute "Basic-SQL-Statements" schreibt. Sobald irgendeine spezifische DB-Funktion im SQL-String vorkommt, klappt es nicht mehr.

Ich habe beim entwickeln meines ORMappers die Frage von mir geschoben.
Mein Ziel war einen ORMapper zu bieten der zu jeder datenbank passt und die möglichkeiten jeder Datenbank ausnützt. (geht ja nicht)

also habe ich mir einen "Dummen" ORMapper geschrieben, der Intern für jeden Datenbank einen "Connector" hat.
dieser connector liefert eigentlich nur SQLStrings die gegen die Datenbank gefahren werden können.
Die SQLStrings werden aus meinen "Dto" Dateien ausgelesen. Diese Datei ist mit Attributen vollgestopft. (TableMappingAttribute, FieldMappingAttribute, PrimaryKeyattribute, ForeinKeyAttribute, etc)
Mit dieser Vorgehensweise kann ich bei einem einzelnen Select auch JOIN befehlen zusammen bauen. Wie ein JOIN aussehen muss weis der connector, was er joinen muss kann er aus bekommt er vom ORMapper ausgelesen.

Damit bin ich Datenbank unabhängig solange ich nur SELECT UPDATE und DELETE verwende. Genügt für den grösseren Teil den die Anwendung braucht.

Es genügt aber nicht für alle Programme und dafür habe ich ein neues Attribut erfunden, das CommandAttribute
dieses CommandAttibute kann clientseitig verwendet werden um einen SQL-Procedure aufzurufen.
Damit ist der Verwender des ORMappers in der Verantwortung sich einen umstieg auf eine andere Datenbank zu erschweren. Nicht mehr Deine.

Durch eigene connectoren die sich die SQL-Befehle zusammen bauen, machst Du Dir schon recht viel datenbank unabhängigkeit ohne auf features der datenbank zu verzichten.

hoffe der Text war verständlich.

lg
RR

Thema: Wie autonome Fahrzeuge die Welt verändern werden
Am im Forum: Smalltalk

Das sowetwas kommen wird steht für mich ausser Frage. Ich bin/war selbst Pendler, früher an die 1.200 km pro Woche und wenn man da in die Stadt fährt werden da Probleme auf uns zukommen die fast nur so gelöst werden können.

Aber wie da schon ein paar mal erwähnt, der Umstieg könnte da ein Problem werden.
3 automome Fahrzeuge, und 27.000 andere.
Genau genommen braucht ein Automatisches Fahrzeug eigentlich nur lenken, bremsen und gasgeben.
Selbst relative simple Tätigkeiten, aber einem Auto das ales ganzes beizubringen ist aber schon schwieriger. Was ich mir vorallem für Autobahnen (hier sehe ich den grössten Sinn) als lösung sehen könnte ist: nicht das das Auto autonohm fährt, sondern die Strasse weis wieviele Autos unterwegs sind und den Autos selbst weiter gibt, was es tun soll.
So Radartechnik an den kleinen Lichtern am Strassenrand und WLAN zum kommunizieren mit den Autos selbst.
Würde von aussen gleich aussehen und in den Autos würde mehr oder weniger ein kleiner Empfänger sein der das Lenkrad und die zwei Pedalen bedienen kann.

Das würde meiner Ansicht nach sehr viel bringen, vorallem wenn ich daran denke wie ich immer nach Wien gefahren bin. Ne kleine Gruppe, Windschatten fahren mit Geschwindigkeiten die in Deutschland auch nicht erlaubt wären.
Laut Studio gehöre ich zu den Menschen die am wenigsten Unfälle (pro km) haben, aber am meisten Strafen haben. Andere kaufen sich darum ein Auto für das was ich dem Stadt schon gezahlt habe :-(

Thema: Informatik-Studium sinnvoll/nützlich? Welche Alternativen zum Studium sind sinnvoll/nützlich?
Am im Forum: Smalltalk

Auch wenn ich in meinem Ersten Post davon gesprochen habe, das in einem Studium manchmal unqualifiziertes Personal produziert wird, sehe ich es absoluten Vorteil an wenn man ein Studium hat.

Wie einer der Vorredner sagte es liegt am Individuum!
Wenn einem Programmiern (Software entickeln) gefällt wird er die Studienzeit nützen und sich neben dem Studieren die, von einigen bemägelte fehlende Praxis, aneigenen.

Wenn er mit dem Studium fertig ist, privat einen ->funktionierenden<- ORMapper geschrieben hat, vielleicht dazu ein passenden WCF-Service, dann bekommt er jeden Job für den er sich bewirbt. Zumindest ich nehm so einen mit Handkuss und der erste Kaffee geht auf mich.

Fazit: Wenn man es richtig macht (mit Ehrgeiz!), dann ist das die best investierte Zeit in Deinem Leben

Thema: Informatik-Studium sinnvoll/nützlich? Welche Alternativen zum Studium sind sinnvoll/nützlich?
Am im Forum: Smalltalk

Möchte auch noch meinen Senf dazu abgeben.

Ich bin Zimmerergeselle, keine Matura und noch weniger Studium aber mittlerweile mehr als 10 Jahre Erfahrung (beginnend mit einer Umschulung durch das AMS)

Ich bin ein wie von meinen Vorrednern beschriebener Codemonkey. Dafür einer der schnellsten und sichersten in der Firma (25 Programmierer). Auch schneller/besser als Studierte.

Spezifikation zu schreiben bekomme ich aber nicht, einerseits da ich es nicht wirklich gut kann, keine Erfahrung. Andererseits da sie in Englisch geschrieben werden müssen und meines ist ... far from perfect. Und es der Firma offensichtlich zu viel Aufwand ist dass ich mir diese Erfahrung aneignen könnte.

Bin meines Zeichens SeniorDeveloper (steht auf der Visitenkarte) in einem Kundenteam und bilde auch neue Mitarbeiter aus. Bin MergeMaster (interner Titel), und werde geholt wenn es irgendwo brennt.


Fazit:
in kleineren Firmen macht es "keinen" Unterschied ob man studiert hat oder nicht. da sowieso zuwenig da sind um die Aufgaben strikt verteilen zu können.
Aber in grösseren Firmen (aktueller) ist man als nicht studierter bald mal programmierer 2. Klasse. Unabhängig der tatsächlichen Qualifikation. Die Specs der anderen sind auch nicht der Bringer.
Verdienstmässig kann ich aber mit den Studierten mithalten, wenn ich nicht sogar besser dastehe.

Und als einer der gelgentlich Lebensläufe durcharbeiten muss:
Was ich bei den Studierten als Gefahr sehe: er kann das Studium zwar erfolgreich abgeschlossen haben, hats aber nur gemacht weil er nicht wusste was er sonst tun hätte sollen. Und dann hat man einen relativ teueren eingebildeten Noob da sitzen (passierte nicht nur einmal).
das kann man bei einem Quereinsteiger fast ausschliessen, man tut sich das Umsteigen nicht an wenn man es nicht wirklich will. Und die sind definitiv bemühter und interessierter (nicht jeder, aber im allgemeinen kann ich das schon so sagn)

Und wenn man beim Bewerbungsgespräch von privaten Projekte erzählen kann und ev. eine Lauffähige Demo machen kann zieht das schon gewaltig, dieser ist zwar auf der theoretischen Ebene nicht so der Bringer. (Mich hat man beim Bewerbungsgespräch gefragt welche Normalform ich in der Datenbank verwende, und ich antwortete "im Normalfall Access")
Aber mit einer lauffähige Multithreading Anwendung mit einem Progressbar in der ComboBox (fürs Laden von Daten) konnte ich mich gegen 60 andere Bewerber durchsetzen.

Thema: Moq-Framework: wie geht Weakmatching?
Am im Forum: Rund um die Programmierung

@Ahrimaan
Alleine wenn jemand bei Patterns 'immer' sagt stelle ich es in Frage.
Es ist richtig gegen interfaces zu programmieren hat definitv einen Sinn, allerdings kenne ich auch das Gegenteil. Bei uns in der Firma programmieren wir gegen soviele Interfaces (weil dann können wir alles austauschen und customizen) dass sich keiner mehr auskennt was eigentlich abgeht und das erste Interface, bzw die Klasse dazu sieht noch immer gleich aus wie vor drei Jahren wie ich es programmiert habe, also nix mit austauschen. Und einen haben wir, der implementier ein Interface wenn es techniss einen Sinn ergibt, und ich kann Dir sagen niemand versteht seinen Code.

@gfoidl
Das SRP ist mir im Grund klar und ich gehe auch darauf ein wenn ich etwas entwickle. Allerdings mache ich in diesem Bereich wegen der Lesbarkeit und wartbarkeit Abstriche. eine ProcessModificationIdentifier hinter einem Interface mit IOC und DI bereitstellen ist schwieriger zu entziffern als
ProcessModificationIdentifier identifier = new ProcessModiificationIdentifier();
(da drin ist die Guid), ein klick go to definition und ich sehe die Klasse, sonst muss ich das interface suche und dann kucken wer das alles implementiert.
Ich verstehe das Prinzip, aber wenn es das Verständnis des Codes erschwert gehe ich gerne Kompromisse ein.

Und an Dich geht auch die Medailie fürs helfen, und ich bekomme wiedereinmal die Goldene Ananas. Offensichtlich habe ich beim herumprobieren in den letzten 3 Wochen irgendwas kaputt gemacht, jetzt habe ich es nun gerichtet. Jetzt kommt was falsches aber es wird wenigstens aufgerufen.

@Sarc
Du hast auch in die richtige Kerbe geschlagen.

Thema: Moq-Framework: wie geht Weakmatching?
Am im Forum: Rund um die Programmierung

Ich hab das Retrun umgebaut, jetzt wird sie garnicht mehr aufgerufen !?!
Finde ich jetzt aber auch schräg.
Generell hatte ich aber das Problem dass EqualsProcessModificationArgument nicht aufgerufen wird.

Ist ein gutes Design, einen privat Spass einer Klasse auslagern nur zum testen?
Hmm widerstrebt mir irgendwie, vorallem da es ja zum Mocken gehen sollte

// EDIT:
gerade gefunden in Moq.Mock<T> - how to setup a method that takes an expression:

Zitat
However you are coming up against one of Moq's shortcomings. You would want to put an actual expression there instead of using It.IsAny, but Moq doesn't support setting up methods that take expressions with specific expressions (it's a difficult feature to implement). The difficulty comes from having to figure out whether two expressions are equivalent.

Heist das, das geht nicht?

Thema: Moq-Framework: wie geht Weakmatching?
Am im Forum: Rund um die Programmierung

@gfoidl
Ja, ich denke Du hast mich richtig verstanden, allerdings probiere ich schon ewig damit herum und schaffe es nicht um die Burg.
Die Haltepunkte die ich da setzte werden nicht mal angesprungen. Also wenn etwas falsches geliefert werden würde wäre es ja noch ok, aber es wird nicht mal was aufgerufen.

Hier ein OriginalCode (nicht aufbereitet) der den Callback nicht aufruft:

mObjectStoreServerMock.Setup(mock => mock.ProcessModification(
It.IsAny<ProcessModificationArgument>()))
.Callback<ProcessModificationArgument>(argument => EqualsProcessModificationArgument(argument, processModificationEventArgs)
).Returns(TestResults.LoadProcessModificationResult(processModificationEventArgs));

@zoomi
war ein Fehler im Aufbereiten, habs schon ausgebessert.

Generell wollte ich sowas vermeiden, nur wegen dem Testen ein neues Interface einführen. (Oder ProcessIdentifierFactory (liefert die Guid))
Vorallem da das Ding das fast public sein müsste damit ich auch von den Tests darauf zugreifen müsste. Und das schmeckt mir dann garnicht.

Thema: Moq-Framework: wie geht Weakmatching?
Am im Forum: Rund um die Programmierung

Hallo Ihr,

Ich glaube es heist Weakmatching, Ich möchte das Parameter nur teilweise Matchen.

Ich habe eine Klasse die als Identifier einen Guid erstellt.
Guid ProcessArguments.Identifier;
Diese Klasse hat auch noch eine zweite Property
List<string> ProcessArguments.Strings


In meiner TestKlasse bereichte ich eine Instance auf um sie der Method Setup des Moq frameworks

ProcessArgument arg = new ProcessArgument();
// der Identifier wird im ctor zugewiesen (eine Guid erstellt)
arg.Strings.Add("test");


Die Methode die ich testen möchte erstellt ebenfalls ein ProcessArgument,
klarerweise mit einer anderen Guid.

Wie kann ich nun das Moq framework aufsetzten dass nur die Gleichheit der Property Strings überprüft wird?

Ich verbringe leider schon realtive viel Zeit damit, wäre net wenn Ihr mir dabei helfen könntet!?

mbg
Robert Rossegger



Noch ein bisschen Code, zum zeigen was ich habe, aber leider nicht funktioniert.

mTestClassMock.Setup(mock => mock.MethodToTest(It.Is<ProcessArgument>(argument => EqualsProcessArgument(argument, processModificationEventArgs))
)).Returns(bla));


private static bool EqualsProcessArgument(ProcessArgument processModificationArgument, ProcessArgument processModificationArgumento)
{
// wird nie aufgerufen!
  return true;
}


http://code.google.com/p/moq/wiki/QuickStart
diese seite sah für mich am richtigsten aus, allerdings habe ich nicht mal annähernd das gleiche Verhalten.

Moq Version:
4.0.10827.0

// Edit Fehler behoben, danke fürs genaue lesen

Thema: Möglichst Redundanz vermeiden bei Updater
Am im Forum: Rund um die Programmierung

aso
Ich hatte am Server immer das ganze Programm und das UpdateProgramm hat einfach alle Files durchgesehen welches neuer ist.
allerdings hatte ich keine Kontrolle darüber was in welcher Version erneuert wurde.

Thema: Möglichst Redundanz vermeiden bei Updater
Am im Forum: Rund um die Programmierung

Beim durchlesen drängt sich mir eine Frage auf
Wer soll wann entscheiden, welche Version er runterladet
1.04 oder die neuere 1.05?

Thema: Suche ORM mit Abstraktion
Am im Forum: Datentechnologien

oh, kann sein dass ich gesucht habe bevor es diese gegeben hat ;-)
na egal, jetzt schreibe ich schon einen eigenen

Thema: Abhängigkeit zu einer bestimmten Logging-Bibliothek vermeiden
Am im Forum: Rund um die Programmierung

You Ain´t Gonna Need It (YAGNI)

wenn man alles implementiert was man irgendwann vielleich mal benötigt, würde man nie fertig werden.
Klar wenn man nen Logger austauscht hat man dann irgendwann vielleicht mehr arbeit.
Aber wenn man sich an diese Regel hält erspart man sich in summe soviel Zeit, dass sich das widerum locker ausgeht.
Wenn ich diese Regel nicht beachten würde, würde ich noch immer am ORMapper programmieren und nicht den SmartClientLayer.
Aber Vorsicht, sich darüber Gedanken zu machen hat keiner verboten, also nicht unötig den Weg verbauen.

Thema: Suche ORM mit Abstraktion
Am im Forum: Datentechnologien

Ich habe keinen gefunden der ähnlich Gentle ist, aber ich bin gerade dabei einen zu programmieren.
Meinen Recherchen nach nehmen die meinste ORM NHiberNate als Vorbild
Zuminstest habe ich noch nicht sehr viele Attributgetriebene ORM gefunden.

Thema: Abhängigkeit zu einer bestimmten Logging-Bibliothek vermeiden
Am im Forum: Rund um die Programmierung

Wir in der Firma haben einen 'Wrapper' um Log4Net herum gebaut
Ähnlich wie von FZelle beschrieben.
Allerdings haben wir festgestellt, dass wir mit an Sicherheit grenzender Wahrscheinlichkeit den Logger nie austauschen werden und diesen Gedanken würde ich Dir auch ans Herz legen.
Tauscht man wirklich einen Logger so oft aus, dass man einen Wrapper benötigt?

Thema: Form.Designer.cs extern erstellen
Am im Forum: GUI: Windows-Forms

jettzt hab ichs verstanden,
entweder Code generieren, oder einen code schreiben der ein File interpretieren kann und zur Laufzeit ein Form erzeugt.
aber für meinen Geschmak würde ich ein designer file generieren,eben damit
VS auch was damit anfangen kann. Würd ich halt meinen.
aber ich hab schon festgestellt dass ich "manchmal" eigenartige Ansichten habe ;-)

Thema: Form.Designer.cs extern erstellen
Am im Forum: GUI: Windows-Forms

aso, ok da sehe ich warhscheinlich nur im Detail Unterschiede.
Ich muss in beiden Fällen Code generieren, und dieser erzeugt dann eine Form.
ob der generierte Code in einem File mit der Endung .cs liegt oder .Designer.cs sehe ich wie gesagt nur im Detail Unterschiede, der Code selbst wird ja ähnlich, wenn nicht gleich aussehen.
Da würde ich sogar eher noch bei .Designer.cs bleiben, da das VS auch mit dem generierten code umgehen kann.

Thema: Form.Designer.cs extern erstellen
Am im Forum: GUI: Windows-Forms

FZelle:
Die Frage verstehe ich nicht, ist das Designer file nicht die Form

Thema: Warum wird Windows2000 immer noch so oft gebraucht
Am im Forum: Smalltalk

Ich persönlich empfinde Win2000 als eines der gelungenstens Betriebssystem von Microsoft.
Bin sehr lange damit gefahren, erst mit einem neuen Laptop bin ich auf XP umgestiegen.

Und von der Geschwindigkeit her konnte ich mich ne beschweren. ist wie bei allen Betriebssystem. Hast Du das doppelte als empfohlen ist alles schnell.
win7 auf einem Notebook mit 2 GB Ram ist sicher langsamer als ein Win7 auf meinem Notebook mit 8 GB und einer SSD.

Und wenn auf dem Win2000 alles läuft was ich zum Arbeiten brauche und das in einer annehmbaren Geschwindigkeit würde ich selbst heute noch keinen Grund sehen umzusteigen. (Auch wenn mir Win7 sehr gefällt)

Es ist einfach ein Aufwand der sich nie, oder sehr spät lohnt.

Ich persönlich verwende Office 2003 und sehe absolut keinen Grund auf eine neuere Version umzusteigen.
Da kenne ich schon alle Menüpunkte und meine Accessdatenbank geht auch auf.
Ja, neuere Versionen sind bunter, aber he, ich bin Programmierer von mir aus könnte die Welt in Schwarz weis sein. Naja, ein paar rothaarige dürfte es schon geben ;-)

Thema: DatagridView Anzeige/Formatierung einer Zeile in Abhängigkeit eines Wertes?
Am im Forum: GUI: Windows-Forms

Ich hab sowas mal im CustomDrawCell Event gemacht.
war von der Performance nicht so schrecklich. wenn man sich nur auf bereits geladene Daten bescchränkt ist sollten sich die Performance einbussen in Grenzen halten.

Thema: Per Control.Invoke aufgerufenes Form.ShowDialog hält Thread an
Am im Forum: GUI: Windows-Forms

Ich habe mich im grossen und ganzen gegen "schlechtes Design" gewehrt, so pauschal kann man das nicht einfach sagen. Ich stimme aber der Aussage zu, dass es immer ein besseres Design gibt.

Zitat von gfoidl
Das erklärt einiges zur Wirtschaftslage :D - SCNR (nicht böse gemeint) -

erwischt, ja, ich wars ;-)

Thema: Per Control.Invoke aufgerufenes Form.ShowDialog hält Thread an
Am im Forum: GUI: Windows-Forms

Zitat von herbivore

klingt für mich nach schlechtem und benutzerunfreundlichem Design. Ich möchte als Benutzer bestimmen, was ich wann tun möchte und nicht von einem Programm vorgegeben bekommen, was ich in welcher Reihenfolge zu tun habe.

...

Und sage bitte nicht, es würde nicht anders gehen.
[OFFTOPIC]
Hallo herbivore,

ich habe das schon sehr oft von dir gelesen, soweit kann ich Deine Argumentation auch verstehen da man ja mit den "neuen" Programmier-Möglichkeiten auch "neue" Programm-Möglichkeiten erhält welche man auch nutzen soll.

Aber gleich von schlechten Design zu reden halte ich für vorschnell, vorallem, da Du nicht weist von wem die Idee kam (Kunde?) bzw. was das Fenster eigentlich anzeigt.

Wenn ich Deine Vorstellungen richtig verstehe (wenn ich hier falsch liege ist der ganze Beitrag obsolete), stellst Du Dir eine moderne Anwendung so vor dass alle Meldungen als eigene Tabs in einer "MDI" erscheinen und er Benutzer sich aussuchen kann ob er sich jetzt darum annimmt ... oder auch nicht.

Nur es gibt manche Workflows im Tagesablauf eines Benutzers die die ganze Anwendung blocken kann.
Ich schreibe Börsendatenimportsystem für Grossbanken. Und wenn da ein User eine Aktie bearbeitet (die Informationen dazu) und er beim Eingeben der Daten einen Fehler macht, dann hat er sich zum Kuckuck sofort darum zu kümmern warum z.b. die Validierung der Preise fehlschlägt. Er hat ein Lock auf die Aktie und jeder andere Teil des Systems steht. Es kann ja nicht exportiert werden wenn es gerade bearbeitet wird. Dann steht eine 64 Core Maschine und wartet bis der liebe User sich entscheidet die Fehler zu bearbeiten. Nö das geht einfach nicht. Da muss der ValidationErrorDialog aufpoppen und er hat das JETZT zu machen.

Was ich damit sagen will, nur weil ein blocking Dialog aufpoppt es noch lange kein schlechtes Design ist.[/OFFTOPIC]

Thema: Design Pattern: Welche benutzt Ihr?
Am im Forum: Rund um die Programmierung

wenn Du die Patterns schon kennst, bin ich ganz Deiner Meinung
Wenn Du gerade mit Patterns anfängst wirst Du noch nicht das Auge dafür haben.
so wollte ich es ausdrücken

Thema: Design Pattern: Welche benutzt Ihr?
Am im Forum: Rund um die Programmierung

Ich habe mir sehr schwer getan beim Lernen der Patterns (hab natürlich noch nicht alle drauf)
Aber ich denke der beste Weg könnte sein, einfach mal im Internet nach Patterns suchen und alles lesen was man findet, hier im Forum wurde natürlich auch schon viel darüber gesprochen und wenn man den vorhanden Links folgt ist man schon mal ein paar Wochen beschäftigt.
Verstehen der Patterns ist imho nur durchs lesen nicht möglich, denn sie lösen Probleme die man nicht hat.
Wenn man ein schönes Stück Zeit investiert hat, dann sollte man anfangen zu programmieren ohne sonderlich auf die Patterns zu achten. Wenn man ein Modul fertig hat, damit meine ich nicht eine einzelne Klasse sondern eher was in Richtung einem Framework, also wenn man ein Modul fertig hat, nochmal über den ganzen Code reflektieren.
Das kann (soll) ruhig solange dauern wie das Schreiben selbst, da wirst Du selbst an gewissen Stellen denken, "Moment, dass könnte man besser machen" dann das Pattern suchen und mit besten wissen und Gewissen den bestehenden Code umbauen.
Das kann (soll) ruhig solange dauern wie das Schreiben selbst, aber beim nächsten Modul sitzt das Pattern schon fest in Deinem Hirn und Du machst es von Anfang an richtig.
Das eine Pattern oder zwei.
Ich selbst halte es für unmöglich, nach dem Lesen von einem Buch alle Patterns richtig anwenden zu können. Also immer schön Step by Step aber dafür sitzt das was man gelernt hat. Wichtig ist hierbei das man sich beim reflektieren genug Zeit lässt und diese Zeit auch nur fürs reflektieren vornimmt.

Soweit die Lesung aus meinem Kopf

Thema: Per Control.Invoke aufgerufenes Form.ShowDialog hält Thread an
Am im Forum: GUI: Windows-Forms

jep, BeginInvoke wird wahrscheinlich die Methode Deiner Wahl sein

Thema: Minimize mehrere Forms gleichzeitig
Am im Forum: GUI: Windows-Forms

Du könntest die Property "ShowInTaskbar" probieren.

Thema: Per Control.Invoke aufgerufenes Form.ShowDialog hält Thread an
Am im Forum: GUI: Windows-Forms

Was sollte der Thread machen, während der Dialog offen ist?

// EDIT
Wie sagt der Thread der GUI das was angezeigt werden soll? (Code)

Thema: Minimize mehrere Forms gleichzeitig
Am im Forum: GUI: Windows-Forms

Klingt irgendwie wie ein interessantes Anwendungsgebiet für MDI?

Thema: Per Control.Invoke aufgerufenes Form.ShowDialog hält Thread an
Am im Forum: GUI: Windows-Forms

grundsätzlich ja, wartet er auf eine Antwort vom Gui Thread? (Antwort vom User)

Thema: EF4 Objekte nach jedem Programmstart neu Erstellen
Am im Forum: Datentechnologien

anders gefragt:
Welchen Vorteil erwartest Du Dir davon wenn das DomainModel bei jedem ->Programmstart<- neu generiert wird?

Thema: EF4 Objekte nach jedem Programmstart neu Erstellen
Am im Forum: Datentechnologien

generell denke ich, dass dieser Schritt nicht automatisch erfolgen sollte.
Klar könnte man es automatisieren und es würde auch nichts schlimmes passieren ... meistens.
Und genau dieses sagt mir, es muss ein ganz bewusster Vorgang sein, sein DomänenModel zu generieren.
Es kommt eine Spalte weg, die wird aus dem EF raus'generiert' und die Anwendung verabschiedet sich ... bei einem User/Programmierer der nichts mit dem DomänenModel zu tun hat und der suchst sich dann zum Idioten bis er herausgefunden hat was da eigentlich los ist.