Natürlich könnte jeder, der wusste, was er tat, den Assembly Reflector verwenden und den JS oder CSS extrahieren. Aber das wäre eine Menge Arbeit, viel mehr als einfach etwas wie FireBug zu verwenden, um an diese Informationen zu gelangen. Ein normaler Endbenutzer wird sich wahrscheinlich nicht die Mühe machen, nur um mit den Ressourcen herumzuspielen. Jemand, der an dieser Art von Dingen interessiert ist, wird wahrscheinlich ein bösartiger Benutzer sein, nicht der Endbenutzer. Sie haben wahrscheinlich viele andere Probleme in Bezug auf Sicherheit, wenn ein Benutzer ein Tool wie den Assembly Reflector in Ihrer DLL verwenden kann, denn zu diesem Zeitpunkt wurde Ihr Server bereits kompromittiert. Sicherheit war nicht der Faktor in meiner Entscheidung, die Ressourcen einzubetten.
Der Zweck bestand darin, Benutzer davon abzuhalten, etwas Dummes mit diesen Ressourcen zu machen, z.B. sie zu löschen, weil sie denken, dass sie nicht benötigt werden oder anderweitig mit ihnen herumzuspielen.
Es ist auch viel einfacher, die Anwendung für Bereitstellungszwecke zu paketieren, da weniger Dateien beteiligt sind.
Es stimmt, dass die DLL (Klassenbibliothek), die von den Seiten verwendet wird, größer ist, aber das macht die Seiten nicht größer. ASP.NET generiert den Inhalt, der an den Client (den Browser) gesendet werden muss. Es wird nicht mehr Inhalt an den Client gesendet, als für das Funktionieren der Seite erforderlich ist. Ich sehe nicht, wie die Klassenbibliothek, die diese Seiten bedient, sich auf die Größe der zwischen Client und Server gesendeten Daten auswirken wird.
Allerdings hat Rjlopes einen Punkt, es könnte wahr sein, dass der Browser nicht in der Lage ist, eingebettete JavaScript/CSS-Ressourcen zu zwischenspeichern. Ich werde das überprüfen müssen, aber ich vermute, dass Rjlopes richtig liegt: Die JavaScript/CSS-Dateien müssen jedes Mal neu heruntergeladen werden, wenn ein vollständiger Seiten-Rückübertragungsanforderung an den Server erfolgt. Wenn sich dies als wahr herausstellt, sollte dieser Leistungseinbruch ein Faktor in Ihrer Entscheidung sein.
Ich habe den Leistungsunterschied zwischen der Verwendung von eingebetteten Ressourcen, Ressourcen und Einzeldateien immer noch nicht testen können, weil ich mit meinen eigenen Unternehmungen beschäftigt war. Hoffentlich werde ich heute später dazu kommen, denn ich bin sehr neugierig darauf und auf den Punkt des Browser-Cachings, den Rjlopes angesprochen hat.
0 Stimmen
Bitte sehen Sie hier für eine Lösung. Ich hoffe, dass diese Lösung Ihnen hilft.