Zweiteilige FragenDDD principlers und ASP.NET MVC-Projekt Design
ich ein Produkt Aggregat haben, hat;
Preise PackagingOptions Product Produktbilder etc
ich ein Produkt Repository modelliert haben und erstellen Sie nicht einzelne Repositories für eine der untergeordneten Klassen. Alle db-Vorgänge werden über das Produkt-Repository abgewickelt.
Verstehe ich das DDD-Konzept bis jetzt richtig? Manchmal kommt mir die Frage in den Sinn, dass ein Repositorium, sagen wir, Verpackungsoptionen, mein Leben einfacher machen könnte, indem man eine Verpackungsoption direkt aus der DB mit Hilfe seiner ID holt, anstatt das Produkt-Repository nach seiner PackagingOptions-Sammlung zu fragen es mir ..
Zweiter Teil der Bearbeitung ist die Verwaltung erstellen Operationen ASP.MVC Rahmen der Arbeit
ich bin derzeit versucht, mit allen bearbeiten Entfernen dieser untergeordneten Sammlungen von Produkt durch Produkt-Controller hinzufügen zu verwalten (Ton richtig?).
Eine Herausforderung, der ich jetzt gegenüberstehe, ist;
Wenn ich eine bestimmte Verpackung Option des Produkts durch
mydomain/product/editpackagingoption/10 bearbeiten
Ich habe Zugriff auf die ID der Verpackung Option
Aber ich habe nicht die ID des Produkts selbst und dies zwingt mich, eine Anfrage zu schreiben, um zuerst das Produkt zu finden, das diese spezielle Verpackungsoption hat, und dann dieses Produkt und die Verpackungsoption zu bearbeiten. Ich kann dies tun, da alle Verpackungsoptionen ihre eindeutige ID haben, aber dies würde fehlschlagen, wenn ich Sammlungen habe, die keine eindeutige ID haben.
Das ist sehr falsch anfühlt ..
Die nächste Option, die ich gedacht wird auf die URL sowohl die Produkt- und Verpackungsoption IDs zu senden dergleichen;
mydomain/product/editpackagingoption/3/10
Aber ich bin nicht sicher, ob das entweder ein gutes Design ist.
So bin ich an einem Punkt, dass ich ein bisschen verwirrt bin. könnte grundlegende Missverständnisse um all dies haben ...
Ich würde mich freuen, wenn Sie mit der langen Frage ertragen und mir helfen, dies zusammen zu setzen. Vielen Dank!
Gute Frage. Ich kann es nicht beantworten, aber auf den Punkt, dass ich die Produkt-ID nicht habe, ist das wichtig? Wenn es ein Eins-zu-eins ist, dann sollte die PackingOption vielleicht eine eigene ProductID haben? – jeef3
Es hat eine Product-ID, die in der Datenbank beibehalten wird. Herausforderung ist, wie ich dorthin komme, ohne ein PackagingOption-Repository zu haben. – kaivalya