Kennt jemand eine Möglichkeit, ungenutzte Ansichten im Projekt zu finden? mit Resharper oder ohne es. Jede Idee, die einfacher ist, als alle Ansichten aufzuschreiben und alle Controller zu durchlaufen und manuell zu überprüfen, ist sehr geschätzt :) Danke
Mit ReSharper können Sie mit der rechten Maustaste auf eine Razor-Ansicht und Suchen nach Usages klicken, aber Sie müssen manuell durchgehen und für alle Ansichten wiederholen (es sei denn, Sie können die ReSharper-API einbinden und automatisieren) .
Das Problem mit Sichten besteht natürlich darin, dass sie auf der Grundlage einer in der Ansichts-Engine definierten Konvention spät gebunden sind. Im Fall von RazorViewEngine
sucht sie nach einer entsprechenden Ansicht in ~/Views/{Controller}/{Action}
und ~/Views/Shared/{Action}
. . Daher ist es schwierig, beim Entwurf oder der Kompilierung zu bestimmen, welche Ansichten, Teilbilder und Vorlagen nie verwendet werden.
Sie können es aus dem anderen Blickwinkel verwenden: Finden Sie heraus, welche Ansichten verwendet werden. Dann diff diese Liste gegen alle Ansichten im Projekt, werte die Ergebnisse aus (manuell und mit ReSharper Find Usages) und bestätige, dass sie wirklich nicht benutzt werden, bevor sie schließlich entfernt werden.
Um die verwendeten Ansichten zu finden, könnten Sie die RazorViewEngine so anpassen, dass sie bei jedem Laden einer Ansicht mit CreateView
und FindPartialView
, z. B.
Konfigurieren Sie es in global.asax.cs
%Vor%Extrahieren Sie anschließend eine Liste der protokollierten eindeutigen Ansichtspfade, um sie mit den Ansichten Ihres Projekts zu vergleichen. Etwas Aufwand, aber möglicherweise lohnt es sich, wenn Sie viele ungenutzte Ansichten haben, die das Projekt verstopfen.
Tags und Links asp.net-mvc-3 model-view-controller asp.net-mvc-2 resharper