Suchergebnisse

Suchergebnisse 1-30 von insgesamt 34.

  • Benutzer-Avatarbild

    Hallo @kaifreeman Ja, das ist nicht so einfach innerhalb der Generischen Klasse. Was mir aber in Auge sticht: Warum gibt die GetAll Methode eigendlich eine ObservableCollection zurück und kein IQueryable(Of T)?? Damit nimmst du dir alle möglichkeiten die Daten zu Filtern, zu sotieren, paging und noch vieles mehr. Du würdest also IMMER ALLE DATENSÄTZE laden, was sehr schlecht ist. Weiters würdest du mit deiner implementierung immer entweder die gelöschten holen oder immer nur die nicht gelöschten…

  • Benutzer-Avatarbild

    Hallo Zitat von kaifreeman: „Die Implementierung mit den Interfaces erscheint mir auch etwas kompliziert immerhin muss man für jede Entität nebst einem eigenen Repository noch ein Interface anlegen...“ Habe ich eh geschrieben warum ich es mit Interfaces gemacht habe. Und stimmt, das ist so üblich da man ja sonst zig Basisklassen hätte und die Benamsung dieser ist das auch meisst nicht die beste. Zitat von kaifreeman: „C# kann ich mir sparen, ich arbeite nur in vb.net hoffentlich schaut mein Code…

  • Benutzer-Avatarbild

    Hallo @kaifreeman Ich kenne das, oft denkt man ZU kompliziert. Mach einfach: VB.NET-Quellcode (1 Zeile) Hier meine Methode angepasst (und funzt): VB.NET-Quellcode (15 Zeilen) Wie man sehen kann: SQL-Abfrage (9 Zeilen) Grüße Sascha EDIT: Nur so am Rande. Was hat das eigendlcih mit WPF zu tun???

  • Benutzer-Avatarbild

    Hallo Was soll ich sagen. Funzt bei mir. Da muss der Hund wo anders begraben liegen. Evtl. kannst du ne Zip holagen und dann schau ich mal drüber. Vieleicht finde ich da dann ja was. Grüße Sascha

  • Benutzer-Avatarbild

    Hallo OK, also ich muss sagen das hier glaube ich EF schuld ist da der Fehler erst bei der ausführung des Querys auftritt. Ich habe gesehen das du das ältere EF 6 verwendest. Gibt es einen Grund nicht EF Core zu verwenden? Ich weis nicht genau ob hier EF 6 das problem ist und hier den Cast evtl. nicht korrekt unterstützt. Weiters muss ich leider auf ein paar Dinge eingehen. Soll jetzt keine Kritik sein, nur Hinweise von mir.- Warum implementiert die Model-Basisklasse ALLE Interfaces? Da muss ich…

  • Benutzer-Avatarbild

    Hallo Stephan Freut mich das es nun funzt. JA, in EF Core ist einiges anders, das meißte jedoch viel besser. Vorallem in Sachen performance und "kaltstart" wie du sicher bemerkt hast. EF Core lohnt sich. Übrigens - wenn du EF lernen möchtest und richtig damit arbeiten willst, empfehle ich immer gerne das Buch von Holger Schwichtenberg. Ich habe es gelesen und kann es empfehlen. Generel die Bücher von Holger. Ich habe mehrere von ihm. Zitat von kaifreeman: „Danke für deine Hinweise bin immer dank…

  • Benutzer-Avatarbild

    Hallo Gut das du nachfragst, ich weis - da kann man sich oft lange spielen. Zitat von kaifreeman: „Alles ohne die Get/Sets weil die braucht es ja nicht mehr.“ Aber was machen die Variablen da noch? So? VB.NET-Quellcode (27 Zeilen) Einfacher und übersichtlicher oder? In der kurzen schreibweise eines Properties wir vom Compiler automatisch ein Backingfield im Hintergrund im Shema "_%PropertieName" erzeugt. Aber für dich nicht sichtbar. Kannst da ja mal Probieren nun in dem Model von mir z.b. im Ko…

  • Benutzer-Avatarbild

    Sorry, vergessen. Zwei Dinge vieleicht noch. - Achte darauf das ich den zweiten Konstruktor der CurrencyVm-Klasse als Friend deklariert habe. Das ist wichtig damit eben das Model NICHT nach außen gereicht wird! - Warum schreibst du immer RaisePropertyChanged("CurrName"). Da das MVVM Light wie hier in ViewModelBase zu sehen ist verwendet das Toolkit <CallerMemberName>. Du kannst also einfach RaisePropertyChanged() schreiben. So kannst du dich nicht vertippen und wenn du das Property änderst musst…

  • Benutzer-Avatarbild

    Hallo Na du kommst ja ganz gut voran. Gefällt mir Zitat von kaifreeman: „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...“ Ja, denkt man am Anfang. Ganz so schlimm ist es aber dann nicht. Ich habe mir hierfür Vorlagen und T4 Templates geschaffen welche das für mich erledigen aber.... Gehe einfach in die …

  • Benutzer-Avatarbild

    Hallo Zitat von kaifreeman: „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...“ Wenn deine Get Methode des Repository der Wrapper für Find des DBContexts ist was ich vermute wird in diesem Fall kein Query abgesetzt. EF Core fürt…

  • Benutzer-Avatarbild

    Hallo Zitat von kaifreeman: „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?“ Naja, ich habe es im HomeStorage ja so implementiert das im Repository die Signatur von z.b. GetAll als Parameter das Tracking eingeschaltet werden kann. Wird dies gemacht wir das Tracking für DIESES Query eingeschaltet. Also werden die Datensätze welche mit der ausführung dieses Querys getrack…

  • Benutzer-Avatarbild

    Hallo Hast du diesbezüglich noch Fragen wegen den NavigationProperties oder passt soweit alles? Wirst sehen, bist du da mal "drinnen" willst du nicht mehr anders proggen. Grüße Sascha

  • Benutzer-Avatarbild

    Achso. Ne, kein Problem. Lass dir ruig Zeit. Gut ding braucht weile. Das mit den NavigationProperties schaffst du auch noch. Ich wünsche dir viel spaß mit dem Buch, ich habe es einem Freund auch empfohlen und der hat es richtig verschlungen und auch ich habe alleine dieses Buch von Herrn Schwichtenberg sicher drei mal komplett(!!) durchgelesen und da passiert bei einem Buch recht selten das man wirklich jedes Kapitel durchgeht. Er erklärt wirklich gut und einfach. Schöne Grüße Sascha

  • Benutzer-Avatarbild

    Hallo Kai Ich verstehe die problemantik und kann dir soweit folgen, es ist aber schwer zu sehen wo nun den Denkfehler ist wenn man nur ein paar aus dem Kontext gerissene Codezeilen sieht. Kannst du das Projekt mal hochladen bitte damit ich mir das ansehen kann? Grüße Sascha

  • Benutzer-Avatarbild

    Hallo Kai Zitat von kaifreeman: „Das Forum unterstützt leider keine geteilten Archive die Datei MyERP2_001.7z muss daher in MyERP2.7z.001 und Analog die 002 umbenannt werden.“ Bitte das nächste mal auf "Projekt bereinigen" in VS klicken. Angehängte Projekte nämlich immer ohne "Packages" sowie ohne "bin" und "debug"-Ordner hochladen. Dann hat der Anhang auch nur ein paar KB und du sparst dir das Splitten von Archiven. Zitat von kaifreeman: „Ich denke nur an den Artikelstamm der hat eine Vielzahl …

  • Benutzer-Avatarbild

    Zitat von kaifreeman: „Das würde ja bedeuten ich müsste alles über Queries abdecken?? Mit anderen Worten wenn ich die Benutzergruppen für den Benutzer brauche => Query um alle Rechte der Gruppen zu holen => Query...“ Ne, keine Angst, so kompliziert ist es dann nicht. Ich bau dir da was ein. Zitat von kaifreeman: „Ok gut ich meine ich verstehe schon das ich mir den RAM nicht "zumüllen" will aber wenn ich immer brav mein Viewmodel Dispose wenn ich es nicht mehr brauche sollte das eigentlich kein T…

  • Benutzer-Avatarbild

    Hallo Kai Also erstmal hut ab. Hast du dir nicht die Finger wund getippt? Wahnsinn was du alles schon für ViewModel Klassen drinnen hast und wieviele Repositories. Unglaublich!! Das muss ja arbeit sein. Ein Tipp von mir. Erst immer weitermachen wenn ein "System" funzt. und man sicher ist man ist am richtigen weg. Warum sooo viele VMs wenn du gar nicht weist ob diese Basisklasse passt oder ob du mit dem MVVM Light zurechtkommst. Du musst ja nicht alle erstellen das dein Projekt kompiliert. Genaus…

  • Benutzer-Avatarbild

    Hallo Stephan Zitat von kaifreeman: „Instanceholder in den DAL verschoben“ Das ist auch korrekt so. Sorry, das mit dem InstanceHolder hätte ich dazu sagen sollen. Das war jetzt nur eine schnelle implementierung. In meinen Projekten habe ich diesen in einer eigenen Assembly ohne Verweise auf irgendeine andere Bibliothek. Im Context und der BL habe ich diesen InstanceHolder referenziert. Die BL setzt den Connectionstring 1x und der Context liest ihn dann immer wieder aus. So spare ich mir das stän…

  • Benutzer-Avatarbild

    Ich Antworte dir morgen detailierter auf deine Antwort. Aber wegen TFS. Ich hab ein MS Konto. Musst mich also nur zum Projekt einladen. Grüße Sascha

  • Benutzer-Avatarbild

    Hallo und guten morgen Zitat von kaifreeman: „Ich denke das die "CurrentUserInfo" Property im ConnectionHolder nichts verloren hat. Ich werde diese dann noch in ein eigenes Singleton packen.“ Richtig, deshalb hatte ich es InstanceHolder benannt. Dort hätte ich sowohl den ConnectionString reingapckt als auch andere Infos welche immer zur Verfügung stehen sollen. In dem Falle der Userinfos und den Rechten des Users hätte ich primitive Datentypen genutzt um keinen Verweis auf das Model haben zu müs…

  • Benutzer-Avatarbild

    Hallo, hey kein Thema. Wenn du Zeit hast hast du Zeit und wenn nicht dann nicht. Zitat von kaifreeman: „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.“ Ist öffentlich in meinem Profil. Zitat von kaifreeman: „Ich werde jetzt sukzessive das Programm umbauen und implementieren, ich würde diesen Thread weiterhin nutzen dan…

  • Benutzer-Avatarbild

    Hallo Stephan Da ich bis dato keine DevOps Einadung erhalten habe wollte ich mal nachfragen. Lebt das Projekt noch? Ansonsten könnten wir es ja als "Erledigt" markieren. Grüße Sascha

  • Benutzer-Avatarbild

    Hallo Komisch, habe keine Einladung erhalten. Jetzt habe ichs aber Klonen können. Hast du auch eine serverlist.xml für mich? Sonst klappt es nicht. Grüße Sascha

  • Benutzer-Avatarbild

    Zitat von kaifreeman: „ich werd dich nochmal zum Team hinzufügen.“ Nene, passt schon, bin eh im Team. Zitat von kaifreeman: „Hab hier noch keine Prüfung eingebaut.“ Naja, ne Prüfung ob sie existiert haste ja eh. 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. Grüße Sascha

  • Benutzer-Avatarbild

    Hallo Einfach damit ich am aktuellen Stand bin und weis WO du nun bist und was als nächstes funktionieren soll und vorallem was bereits funktionieren sollte. Login klappt bei mir nicht, ist das richtig? Habe in der DB den Administrator in sa geändert da ich mich sonst nicht anmelden kann. Es scheint du hast den Login deines Programms mit dem Login am SQL Server gekommpelt. Gibts dafür einen Grund? Irgendwie kommts mir da ein wenig hoch weil ich mich frage wozu. EF Logt sich ein, das ist ja unabh…

  • Benutzer-Avatarbild

    Zitat von kaifreeman: „Richtig erkannt das Login Management übernimmt hier der SQL Server. Meine Überlegung ist folgende gewesen. Das System ist ausschließlich dafür gedacht mit einem SQL Server zu arbeiten, der SQL Server hat eine integrierte Benutzerverwaltung ich kann dort ganz gut alle Rechte der Benutzer steuern ohne das ich dem Programm einen "Masterzugang" geben muss für jeden User und dann über irgendwelche internen Tabellenberechtigungen die Benutzerverwaltung vom SQL Server ausheble.“ …

  • Benutzer-Avatarbild

    Zitat von kaifreeman: „View wird aktualisiert, speichern erfolgt auch in der DB ich glaube das sollte der bessere Weg sein, bitte um Experten Meinung“ Vollkommen richtig. Die zweite Veriante ist gut. Es gilt immer. DB aktualisieren und im View (ViewModel) nachreichen. Also immer syncron halten. Dafür gibt es zwei möglichkeiten. Ich speichere in die DB und lade das ViewModel neu. So das z.b. Listen neu abgerufen werden - oder - Ich speichere in die DB, merke mir was gespeichert wird und aktualisi…

  • Benutzer-Avatarbild

    Zitat von kaifreeman: „Ob ich jetzt in meinem Viewmodel eine Navigation Property habe oder eine 2. Property im Viewmodel habe die mir die Benutzerrechte hält ändert eigentlich nicht wirklich was hat aber den Vorteil das ich ohne das ganze include gedönse auskommen würde, sehe ich das korrekt?“ Ne, Das Include sparst du dir nicht, du musst ja trotzdem die Daten abrufen. Zitat von kaifreeman: „Wo sollte man das Passwort dieses Zentralen Users speichern?“ Ich mache das in meinen Projekten so das ic…

  • Benutzer-Avatarbild

    Guten Morgen! Zitat von kaifreeman: „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“ Wie du das in deinem VM machst bleibt natürlich dir überlassen, wie du dir leichter tust. Das VM soll die View "abbilden". Je nachdem wie du es machen willst. Zitat von kaifreeman: „wenn ich im Findby nach dem DeletedFlag frage trifft es ja nur die B…

  • Benutzer-Avatarbild

    Hallo @kaifreeman Also, ich habe das Projekt nun mal am neuesten Stand geöffnet und mir angesehen. Starten war nicht da nun der Pfad zur Serverlist.xml aus der Registry ausgelesen wird ohne das bei nicht existieren des Schlüssels ein Default-Wert erstellt wird. OK, per Hand angelegt. Geht auch nicht, da vermutlich Schema anders. Also die aus dem Projekt genommen und wieder editiert. OK, Startet und Login klappt. Dann wollte ich mal probieren eine Rolle anzulegen, aber ich kann kein Feld bearbeit…