Identifizieren der Ursache für den Fehler „Assembly Not Referenced“
Der berüchtigte „Der Typ {Type Name} ist in einer Assembly definiert.“ Der Fehler „nicht referenziert“ hat viele Entwickler verwirrt, insbesondere diejenigen, die App_Code-Verzeichnisse verwenden. Während es Lösungen für ähnliche Fehler gibt, zielen die folgenden Schritte darauf ab, die Grundursache speziell in diesem Zusammenhang aufzudecken.
Das Rätsel um fehlende Referenzen
Trotz der Versuche, verbleibende Überreste von zu entfernen Bei der Verwendung zuvor referenzierter Assemblys (Project.Rights.dll) und der Sicherstellung von „Kompilieren“-Build-Aktionen weigert sich die Anwendung hartnäckig, den betreffenden Typ zu erkennen (Project.Rights.OperationsProvider) im App_Code-Verzeichnis. Die Fehlermeldung selbst liefert einen wertvollen Hinweis: Eine Baugruppe fehlt.
Jenseits des Offensichtlichen: Untersuchen verschachtelter Abhängigkeiten
Eine genaue Untersuchung der Fehlermeldung offenbart ein mögliches Versehen. Während der primäre Typ (MyObjectType) möglicherweise ordnungsgemäß referenziert wurde, berücksichtigt dies nur direkte Abhängigkeiten. Das Szenario der Konstruktorüberladung deckt einen entscheidenden blinden Fleck auf: fehlende Verweise auf Typen, die in Methodenparametern oder -eigenschaften verwendet werden.
Auf der Suche nach den Breadcrumbs
Um das Problem zu lösen, müssen Entwickler eine sorgfältige Prüfung durchführen Die Konstruktorüberladungen des Typs. Möglicherweise stellt man fest, dass eine Überladung vorliegt, die einen Typ erfordert, auf den derzeit nicht verwiesen wird. Durch die Lokalisierung dieser fehlenden Abhängigkeit wird die Lösung klar: Auf die fehlende Assembly muss verwiesen werden, um den Fehler zu beheben und es der Anwendung zu ermöglichen, den gewünschten Typ im App_Code-Verzeichnis zu finden.
Das obige ist der detaillierte Inhalt vonWarum wird in meiner App trotz scheinbarer Referenzierung die Meldung „Der Typ {Typname} ist in einer Assembly definiert, auf die nicht verwiesen wird' angezeigt, wenn App_Code verwendet wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!