Stellen Sie sich vor, Sie haben eine Auflistungsseite, die eine Verkettung mehrerer Entitäten auf Ihrer Site darstellt (z. B. eine Suchseite). Sie sammeln alle Objekte Ihrer Website in der Aktion, und sie alle in eine allgemeine Ansicht Modelltyp zuordnen ..MVC Musterpraktiken (asp.net mvc) - Generieren von URLs bei der Aktion anstelle der Ansicht
pseudo:
from articles, posts, projects
orderby rating
select top 50 as 'SearchResult'
Meine Suchergebnis Klasse könnte wie folgt aussehen:
SearchResult { Title, Snippet, Rating }
In diesem Szenario wird die Ansicht keinen Zusammenhang haben, was jedes Ergebnis "ist". Wie kann es also eine URL erzeugen, um mehr Details zu erhalten, sollte das Ergebnis dann kategorisiert werden?
SearchResult { Title, Snippet, Rating, ResultType }
where ResultType is { Article, Post, Project } enum
Dies funktionieren würde, wäre es die Ansicht erfordern, die die Beziehung der Enumeration zu einer Controller-Aktion zu entdecken ..
Dies ist jedoch Probleme für die Wartbarkeit verursachen würde, jede neue Art Einheit oder statischer Inhalt Abschnitt würde müssen kategorisiert werden, und ein Mapping von dieser neuen Kategorie zu einer Controller-Aktion. Zusätzlich verursacht dies Probleme, weil .. welche Daten ich an die Aktion übergebe? Was ist, wenn keine Daten zu übergeben sind?
scheint die beste Szenario url die ‚mehr Details‘ in der Aktion zu erzeugen wäre, wo es Kontext jedes Unternehmen hat, und die Aktion/Datenzuordnung ..
Ist es für Controller/Aktionen ok Urls generieren, sollten sie nicht Agnostiker bleiben?
Vielen Dank im Voraus.
+ Stimme völlig zu –