WebResource.axd leer oder wurde nicht gefunden
Ich versuche zu exportieren einer control-library in einem .dll von anderen Entwicklern im Büro zu konsumieren.
Die Lösung, die ich original erstellt sieht wie folgt aus:
Lösung 1:
- MRT.Kontrollen (Class Library)
- MRT.FmTool (Web-Anwendung)
MRT.FmTool Referenzen MRT.Controls.
Innerhalb MRT.Kontrollen, ich habe einige javascript-WebResources. MRT.FmTool scheint zu Lesen, das WebResources ganz gut, alle meine javascript-web-Resourcen angezeigt, wie Sie sollten beim MRT.FmTool web-app ausgeführt wird.
So, jetzt war ich versucht, zu erstellen eine einfache Lösung, um zu konsumieren MRT.FmTool
Lösung 2:
- MRT.ConsumerTest (Web-Anwendung)
Nahm ich die neuesten Mri.Controls.dll und fügte hinzu, es als einen Verweis auf MRT.ConsumerTest Anwendung. Alle Steuerelemente aus der MRT.Kontrollen scheinen zu funktionieren innerhalb MRT.ConsumerTest. Intellisense funktioniert, kompiliert, keine Probleme.
Allerdings, wenn es läuft, die meisten der WebResource.axd Dateien sind leer, einfach nur leer. Eine WebResource.axd-Datei nicht leer ist, sondern einfach sagt, "Diese Ressource kann nicht gefunden werden."
Hier sind die Eigenschaften der javascript-Dateien im Eigenschaften-Fenster:
Build-Aktion: "Eingebettete Ressource"
Copy to Output Directory: "immer Kopieren"
Schritt, was bin ich?
- Vielen Dank für diese Frage! Ich habe nicht die gleiche Frage, aber ich hatte ein ähnliches problem. War nicht bewusst, dass "Buildvorgang: Eingebettete Ressource" Immobilie obwohl. Danke!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie wahrscheinlich fehlt der [assembly:WebResource("YourNameSpace.YourFile.js", "text/javascript")] - Attribut. WebResource.axd muss das Attribut. Sie können überprüfen, diese KB-Artikel für weitere Informationen über die Angelegenheit.
Sind die Ressourcen festgelegt werden, die Teil der DLL?
Öffnen Sie die Projektmappe MRT.Steuerungen & anzeigen der Eigenschaften von javascript-Ressource-Dateien.
Ich denke, das ist, wo das problem sein könnte.
Bemerkte ich, dass meine WebResource CSS-Dateien wurden ordnungsgemäß geladen, aber Javascript wurde nicht geladen, WebResource in die neue Lösung.
So, anstatt die System.Web.UI.ClientScriptManager verwendet, um zu registrieren, das WebResources, wechselte ich zu mit System.Web.UI.ScriptManager. Jetzt werden die Dateien aus ScriptManager.axd (statt WebResource.axd). Dies schien das problem zu beheben.
Alten Code, bevor Update:
Den code-Ausschnitt nutzt System.Web.UI.ClientScriptManager
Neuen Code nach Update:
Den code-Ausschnitt nutzt System.Web.UI.ScriptManager
Aus meinem Verständnis, ClientScriptManager wurde in 2.0 eingeführt. Ich glaube ScriptManager ist die neue, verbesserte 3.5 Art und Weise der Verwaltung von scripts, die hat viel mehr Funktionalität.
/zucken
ScriptManager.RegisterClientScriptResource()
- dauerte eine Weile, bevor ich, dass herausgefunden.