Suchergebnisse

Suchergebnisse 1-26 von insgesamt 26.

  • Benutzer-Avatarbild

    Abend, ich spiele mich gerade mit dem UnitofWork und Repository Pattern die Implementierung funktioniert eigentlich ganz gut und tut was es soll. Aktuell habe ich eine "GetAll" Methode welche Daten aus der DB liest und als ObservableCollection zurückgibt: Hier mal das Interface vom Repository (nur mit der Relevanten Function): (Versteckter Text) Dann noch das eigentliche Repository (nur mit der relevanten Function): (Versteckter Text) In meinem Modell verwende ich angelehnt an das "Homestorage" …

  • Benutzer-Avatarbild

    Hallo Zusammen, erstmal danke für die Antworten. @ErfinderDesRades Nein kompiliert auch nicht, war eigentlich nur gedacht um das Interface darzustellen. Nachdem die Lösung aber sowieso nicht kompilierte war mir das jetzt nicht so wichtig. Nja das mit dem Interface ist so eine Geschichte, ich hab mir einen Udemy Kurs angesehen und dort wurde das so erklärt. Die Implementierung mit den Interfaces erscheint mir auch etwas kompliziert immerhin muss man für jede Entität nebst einem eigenen Repository…

  • Benutzer-Avatarbild

    Hallo Sascha, Danke für deine Erklärung das ganze ist damit eigentlich verständlich. Ich sehe gerade das ich durch diese Implementierung einiges im Projekt ändern muss. Bei der GetAll habe ich das Problem jetzt auf die Zeile eingrenzen können: VB.NET-Quellcode (2 Zeilen) Wenn ich mit dem Debugger das ganze mitverfolge wird direkt in derZeile ein Error ausgelöst: 'DirectCast(Query, System.Data.Entity.Infrastructure.DbQuery(Of MyERP.Currency)).Sql' threw an exception of type 'System.NotSupportedEx…

  • Benutzer-Avatarbild

    Hallo Sascha, Zitat von Nofear23m: „Hallo @kaifreeman Ich kenne das, oft denkt man ZU kompliziert. Mach einfach: VB.NET-Quellcode (1 Zeile) “ Das funktioniert natürlich weil ich ja schon defacto "typisiert" unterwegs bin. Aber in der generischen Klasse VB.NET-Quellcode (10 Zeilen) da funktioniert es nicht. Prinzipiell kann ich die Entscheidung gelöschte Items mitzuladen ja durchaus im ViewModel erledigen aber meine Befürchtung ist halt wenn ich einmal vergessen die Where Clause für Deleted=False…

  • Benutzer-Avatarbild

    Morgen Sascha, ich wollte gestern nicht die komplette Solution hochladen das wäre für dich zu aufwendig. Ich habe daher ein neues Projekt erzeugt und nur die Entität Currencies mitgenommen und alles so implementiert wie ich es auch in meinem "Hauptprojekt" getan habe. Der Fehler ist reproduzierbar. Im Anhang das abgespeckte Projekt, sehr freundlich von dir das du dir die Zeit nimmst da drüber zu schauen. lg Stephan vb-paradise.de/index.php/Attac…847069aeca8cda6432cab97c8

  • Benutzer-Avatarbild

    Mahlzeit, so es war wirklich ein Problem mit EF6 ich habe jetzt alles auf Core umgeschrieben und es funktioniert. Danke für deine Hilfe. Hab die aktualisierte App nochmals hochgeladen falls es jemand benötigt. vb-paradise.de/index.php/Attac…847069aeca8cda6432cab97c8 Einen Grund für EF6 hat es eigentlich nicht gegeben, ich hatte mein letztes Projekt damit gemacht und habe daher viel Code in das neue Projekt importiert (das war bevor ich mit UnitofWork und Repositories in Kontakt gekommen bin ) Da…

  • Benutzer-Avatarbild

    Hallo Sascha, ich hab das jetzt mit dem ViewModel für die Entität Currency mal durchgespielt: Entität Currency: VB.NET-Quellcode (34 Zeilen) Alles ohne die Get/Sets weil die braucht es ja nicht mehr. hier gleich meine 1. Frage ich nutze DataAnnotations zum erzeugen von dynamischen DataGrid Autogenerated Columns ist die Implementierung besser im Model oder im Viewmodel aufgehoben? Danach das ViewModel für die Entität Currency: VB.NET-Quellcode (57 Zeilen) Soweit ja so gut aber dann bin ich wieder…

  • Benutzer-Avatarbild

    Abend, ganz ehrlich das Thema mit einem eigenen ViewModel für die Entität ist ziemlich komplex.... irgendwie habe ich das Gefühl ich tipp mir nen Ast und bastel Klasse und Klasse und habe aktuell keine Mehrwert aber egal da muss er durch der Lurch... Hab jetzt versucht meine View um CRUD zu erweitern: (Versteckter Text) Das Create funktioniert ganz gut die UnitOfWork tut was sie soll, Delete gefällt mir zwar nicht aber funktioniert, bei Edit steh ich allerdings schon wieder am Schlauch. Das Edit…

  • Benutzer-Avatarbild

    Abend, muss die letzten Tage vom Urlaub ausnutzen drum bin ich motiviert am arbeiten Am Delete gefällt mir nicht das ich mir das eigentlich bereits vorhandene Object nochmals aus der DB holen muss, wäre es hier nicht einfacher das bereits in der Viewmodel Klasse vorhandene Object vom Typ Entität doch zugänglich zu machen? Ist wahrscheinlich mehr eine Optik geschickte es würde halt eine Query ersparen... Zum Edit: Tja ich hatte per Default den ChangeTracker deaktiviert... (Optional trackings as b…

  • Benutzer-Avatarbild

    Stimmt das vergesse ich ja immer, muss mich erst daran gewöhnen das die UoW ja nicht immer mit der Datenbank kommuniziert wenn etwas ausgeführt wird. Das Buch habe ich schon bestellt danke für den Tipp Zum Thema ChangeTracker, interpretiere ich das richtig das der Changetracker wie in deinem Fall beschrieben GetAll(True) in dem Fall dann permanent für diese Query aktiv ist? Wenn ja macht es definitiv Sinn ihn immer abzuschalten gibt ja genug Situationen wo changeTracking nicht erforderlich ist. …

  • Benutzer-Avatarbild

    Hallo Sascha, sorry für meine verspätete Antwort, ich habe den ganzen Sonntag verballert um mein Projekt jetzt angelehnt an Homestorage aufzubauen. Da ist mehr Zeit draufgegangen als gedacht aber es hat sich definitiv gelohnt, wenn man den Pattern konsequent anwendet kristallisiert sich "gefühlt" die Trennung der Schichten immer besser heraus. Aktuell habe ich jetzt für alle Entitäten die Viewmodels zum Thema hinzugefügt. Habe alle Repositories überarbeitet und bastel gerade an den Viewmodels fü…

  • Benutzer-Avatarbild

    Morgen, so jetzt hab ich das mit den Navigation Properties getestet aber es will nicht ganz so wie ich das will. Ich habe es geschafft die Navigation Property aus der Datenbank zu laden aber das Viewmodel wird dadurch nicht wirklich beeinflusst. Ich habe hier eine Entität User die über eine Join Tabelle mit UserGroup verbunden ist die Join Entität ist UserUserGroup Damit suche ich den User per ID in der Datenbank und lade mit LoadCollection die Navigation Property: VB.NET-Quellcode (14 Zeilen) D…

  • Benutzer-Avatarbild

    Hallo Sascha, so ich habe jetzt ausnahmsweise wirklich die komplette Solution angehängt und nicht ein neues Programm erstellt. Ich habe hier versucht die logische Struktur von deinem Homestorage nachzubauen. Die Repo Klassen habe ich aktuell mal komplett von dir übernommen (ich werde sie später noch umschreiben nur wollte ich vorher den Pattern verstehen bevor ich mir noch mehr Sargnägel einbaue ). Zur Überlegung hinter dem Programm einige Informationen: Beim Programmstart wird in der "OnStartup…

  • Benutzer-Avatarbild

    Hallo Sascha, Ups, dachte das bereinigen die BIN mitlöscht habe die Solution neu hochgeladen. Zitat von Nofear23m: „Sollte eigendlich vermieden werden. Siehe Buch von Holger. Ich selbst bin auch kein Freund davon. EF 6 hatte das schon drinnen und das ist der performancekiller schlechthin. Einmal nicht aufgepasst und du hast die halbe DB im Ram. Nicht gut.“ Das würde ja bedeuten ich müsste alles über Queries abdecken?? Mit anderen Worten wenn ich die Benutzergruppen für den Benutzer brauche => Qu…

  • Benutzer-Avatarbild

    Hallo Sascha, erstmal vielen Dank das du dir soviel Mühe gegeben hast. Ich habe gestern den Code im Detail analysiert und in meine Applikation eingebunden. Warum ich aktuell so viele Repos und Klassen habe liegt schlicht und ergreifend daran das ich mein bisheriges Projekt MyERP auf die neue Struktur gezogen habe und dort hatte ich bereits alles soweit am laufen. Aktuell fühle ich mich wie ein Neandertaler nach einem Schlaganfall... Irgendwie muss ich gerade alles neu lernen... Die Geschichte mi…

  • Benutzer-Avatarbild

    Abend Sascha, Ich habe jetzt den ConnectionHolder in eine eigene Assembly geschoben das funktioniert gut. Morgen werde ich dann noch das Userhandling verbessern. Ich denke das die "CurrentUserInfo" Property im ConnectionHolder nichts verloren hat. Ich werde diese dann noch in ein eigenes Singleton packen. Mittlerweile ist mir auch klar warum meine Navigationproperties im Viewmodel leer bleiben. Durch das Using Statement kille ich ja immer den aktuellen DBContext. Für mich stellt sich daher mittl…

  • Benutzer-Avatarbild

    Hallo Sascha, sry hatte gestern keine Zeit mehr zu antworten. Ich hab das Repository jetzt ins Azure DevOps geladen wenn du mir dein MS Konto zukommen lässt lade ich dich zum Repo ein. Bis dato hatte ich ja alles auf meinem lokalen TFS aber mittlerweile ist das echt nicht mehr notwendig. Ich werde jetzt sukzessive das Programm umbauen und implementieren, ich würde diesen Thread weiterhin nutzen dann haben andere Interessierte eventuell auch die Historie. Zitat von Nofear23m: „Durch das IQueryabl…

  • Benutzer-Avatarbild

    Hallo Sascha, schon länger her das ich jetzt geschrieben habe, aber ich bin beim System ein großes Stück weitergekommen. Habe jetzt die Layertrennung ganz gut hingekriegt und auch das Laden der Views läuft ohne den MVVM Pattern zu verletzen. Jetzt bin ich aber wieder an dem Punkt wo mir die Layertrennung große Probleme bereitet. Es geht eigentlich um eine Standardoperation, nämlich mal wieder einer NavigationProperty ein neues Element hinzuzufügen, die View updaten und das Model bzw. die DB aktu…

  • Benutzer-Avatarbild

    Hallo Sascha, ich werd dich nochmal zum Team hinzufügen. Die serverlist.xml liegt im MyERP2.BL unter Usermanagement, diese musst du aktuell noch per Hand in %appdata%/local/MyERP2 schupfen. Hab hier noch keine Prüfung eingebaut.

  • Benutzer-Avatarbild

    Hallo Sascha, Zitat von Nofear23m: „Nur hatte ich keine Vorlage wie die XML aussehen muss. Habe aber auch nur im VM gesucht da dort die Prüfung und alles stattfindet. Gehört ja eigendlich eh in die BL. Solltest du noch verschieben.“ Aktuell wird die Serverliste noch im Viewmodel geladen haste recht hat dort eigentlich nix verloren gehört in die Businesslogik werde ich beim nächsten Push mitmachen. => Task 21 Zitat von Nofear23m: „Es scheint du hast den Login deines Programms mit dem Login am SQL…

  • Benutzer-Avatarbild

    Hallo Sascha, danke für deinen Input, hab jetzt mal alles wieder gemerged und gepusht. Unit Test habe ich angepasst da sich die UserGroupAddRight Methode geändert hat. Habe inzwischen weitergearbeitet und das "delete" für die Benutzergruppen Rechte implementiert, allerdings ist mir hier ein unlustiger Umstand aufgefallen. Anscheinend ist es nicht möglich beim Include einer Navigation Property eine Where Clause bzw. einen Vorfilter dazuzupacken. VB.NET-Quellcode (12 Zeilen) Ich kann mich erinnern…

  • Benutzer-Avatarbild

    Hallo Sascha, Zitat von Nofear23m: „Ne, Das Include sparst du dir nicht, du musst ja trotzdem die Daten abrufen.“ Das ich Daten brauche ist klar aber ich frage mich wirklich ob es einen Mehrwert darstellt im Viewmodel die Relation abzubilden. Aktuell ist ja im VM die Navigation Property hinterlegt, aber eigentlich mach es keinen Unterschied ob ich einen Collection mit den Benutzergruppen und eine separate Collection mit den dazugehörigen Rechten habe, nur eben mit dem Vorteil das ich das dann be…

  • Benutzer-Avatarbild

    Hallo Sascha, so hat mal wieder etwas länger gedauert aber ich war nicht untätig. 1. Benutzerlogin umgebaut das ein genereller Benutzer verwendet wird (Die ganze Verschlüsselung habe ich zwar vorbereitet aber noch nicht final umgesetzt) 2. Verweis von Viewmodel auf DAL Layer entfernt somit kein Repository mehr im Viewmodel 3. Migration für die Datenbank implementiert und aktiviert Soweit so gut aber aktuell stellt es mich mal wieder komplett auf. im UsergroupAddEditVM wird ja durch den Navigatio…

  • Benutzer-Avatarbild

    Guten Morgen Sascha, Die geänderten Startbedingungen hätte ich besser dokumentieren sollen, sry hatte vergessen zu erwähnen das ich den gesamten Prozess des Login umgeschmissen habe. Auch die Serverlist wurde dadurch beeinflusst. Die Viewmodelbase werde ich noch auseinanderdröseln, aktuell kann sie definitiv zu viel für alle Viewmodels, liegt auch daran das ich mich beim finalen GUI Design noch nicht entschieden habe was aber auch wieder einen Einfluss auf die Viewmodel Struktur nimmt. Wenn du w…

  • Benutzer-Avatarbild

    Morgen Sascha mach dir keinen Stress, ich liege gerade in einem Wellnesshotel und habe Holger Schwichtenbergs Buch dabei. (Ok Freundin ist sauer aber proggen geht vor ^^) ich freue mich mich schon auf das Beispiel. Inzwischen habe ich noch am MyERP ein paar Änderungen vorgenommen. Durch die Lektüre von Holgers Buch und nachdenken über die aufgeführten Software Architekturen glaube ich langsam meinen Denkfehler zu erkennen. Ich glaube das der Hauptfehler in meiner Architektur darin begründet lieg…

  • Benutzer-Avatarbild

    Hallo Sascha du hast recht ich hab im Zuge der Überlegungen einen Aspekt übersehen. Im Programm hatte ich ein Viewmodel das eine Übersicht zur Verfügung stellt und zusätzlich ein Viewmodel das eine AddEdit Form abbildet in dem gekapselt wieder ein Viewmodel ist das den Verweis auf das Entitätsmodel hat und die Properties abbildet. Das „mittlere“ Viewmodel ist ja eigentlich sinnlos das das Objekt selbst ja von dieser View repräsentiert wird. Meine Computer lose Zeit hat mir folgende Überlegungen …