Dynamisch erweiterbare Funktionen einer Anwendung?
Ich bin vor kurzem auf eine gestoßenWeg Ich habe die Einfachheit des Ansatzes geliebt, um unter Verwendung von ASP.NET MVC3 / 4 steckbare Anwendungsmodule zu entwickeln. Derzeit habe ich meine Bewerbungen wie folgt strukturiert:
Daher folgt jeder, der eine Erweiterung für meine Anwendung entwickeln möchte, dem oben beschriebenen AnsatzTutorial und erstellt eine Erweiterung, die in der bleibtAreas
Mappe. Ich denke, das ist neuAreas
(als neue Projekte erstellt) werden hinzugefügt,.pdb
Dateien werden erstellt und in diebin
Verzeichnis. Meine Frage lautet:
Areas
als steckbare Module?Wie ändere ich den folgenden Code, damit, wenn jemand einen neuen fallenläßtArea
in diebin
Ordner, nimmt die Anwendung es automatisch auf und erstellt einen Link? Und was sollte der Plugin-Autor tun, um dies zu ermöglichen?In meinem_Layout.cshtml
(globales gemeinsames Layout), mache ich Folgendes, um die Links zu konstruieren:
<ul>
<li>@Html.ActionLink("Area1", "Index", "Area1", new { Area = "Area1" }, null)</li>
<li>@Html.ActionLink("Area2", "Index", "Area2", new { Area = "Area2" }, null)</li>
<li>@Html.ActionLink("Area3", "Index", "Area3", new { Area = "Area3" }, null)</li>
</ul>
Nehmen Sie der Einfachheit halber an, dass die Bereichsnamen eindeutig sind. Irgendwelche Vorschläge, wie das geht?