Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 5870|Απάντηση: 2

[Πηγή] Πρακτική λειτουργία: Χρησιμοποιήστε το BundleTransformer για να αντικαταστήσετε το System.Web.Optimization

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 2022-11-12 11:05:08 | | | |
απαιτήσεις: Η αρθρωτή επέκταση του System.Web.Optimization (γνωστή και ως Microsoft ASP.NET Web Optimization Framework) που συνοδεύει το Microsoft ASP.NET MVC είναι ξεπερασμένη και δεν έχει ενημερωθεί για μεγάλο χρονικό διάστημα (Τελευταία ενημέρωση: 20/2/2014, υπάρχουν ορισμένα σφάλματα που κανείς δεν έχει διορθώσει), η εισαγωγή του bootstrap 4 θα προκαλέσει σφάλμα, χρησιμοποιώντας ένα Bundle Transformer τρίτου κατασκευαστή για να αντικαταστήσει το προεπιλεγμένο.

Σχετικά με τη συμπίεση σε πακέτο:Η σύνδεση με υπερσύνδεσμο είναι ορατή.

System.Web.Optimization:F:\...\πακέτα\Microsoft.AspNet.Web.Optimization.1.1.3\lib\net40\System.Web.Optimization.dll

Διεύθυνση NuGet:Η σύνδεση με υπερσύνδεσμο είναι ορατή.

Το System.Web.Optimization θα εμφανίσει το ακόλουθο σφάλμα κατά την ομαδοποίηση του Bootstrap 4:

/* 未能缩小。正在返回未缩小的内容。
(6,10): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6,25): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6,42): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6,59): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6,74): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6,88): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο σγουρού άγκιστρα, βρέθηκε '-'
(6.105): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.122): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο σγουρού άγκιστρα, βρέθηκε '-'
(6.138): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.153): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο σγουρού άγκιστρα, βρέθηκε '-'
(6.168): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.181): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.196): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.216): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.234): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.254): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.272): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο με σγουρά άγκιστρα, βρέθηκε '-'
(6.287): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.305): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο σγουρού άγκιστρα, βρέθηκε '-'
(6.322): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.338): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.353): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.371): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο με σγουρά άγκιστρα, βρέθηκε '-'
(6.393): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.415): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.437): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο με σγουρά άγκιστρα, βρέθηκε '-'
(6.460): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-'
(6.644): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο με σγουρά άγκιστρα, βρέθηκε '-'
*/
/*!
* Bootstrap v4.1.3 (https://getbootstrap.com/)
* Πνευματικά δικαιώματα 2011-2018 The Bootstrap Authors
* Πνευματικά δικαιώματα 2011-2018 Twitter, Inc.
* Άδεια χρήσης από το MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)


Μετασχηματιστής δέσμης

Bundle Transformer - Μια αρθρωτή επέκταση του System.Web.Optimization (γνωστό και ως Microsoft ASP.NET Web Optimization Framework). Οι StyleTransformer και ScriptTransformer, οι οποίες περιλαμβάνονται στον πυρήνα του Bundle Transformer και υλοποιούν τη διεπαφή IBundleTransform. Έχουν σχεδιαστεί για να αντικαταστήσουν τις τυπικές: CssMinify και JsMinify.

Οι κύριες διαφορές μεταξύ του StyleTransformer και της κλάσης και των τυπικών υλοποιήσεων ScriptTransformer: η δυνατότητα εξαίρεσης περιττών στοιχείων κατά την προσθήκη στοιχείων από τον κατάλογο, δεν παράγει επανακλιμάκωση προ-ελαχιστοποιημένων στοιχείων, υποστηρίζει αυτόματη μετατροπή σχετικών διαδρομών σε απόλυτες διαδρομές στον κώδικα CSS (χρησιμοποιώντας UrlRewritingCssPostProcessor) κ.λπ. Αυτές οι δεν παράγουν ελαχιστοποίηση του κώδικα κατά το χρόνο εκτέλεσης, αλλά αυτή η λειτουργία μπορεί να προστεθεί με την εγκατάσταση minifier-modules (οι ενότητες που είναι διαθέσιμες τώρα βασίζονται στο Microsoft Ajax Minifier, YUI Compressor για .NET, NUglify, Google Closure Compiler, Douglas Crockford's JSMin, Dean Edwards' Packer, UglifyJS από τον Mihai Bazon, CSSO (CSS Optimizer) από τον Sergey Kryzhanovsky, WebGrease και Clean-css). Επιπλέον, μπορείτε να εγκαταστήσετε ενότητες μετάφρασης για να υλοποιήσετε τη μετάφραση κώδικα σε ενδιάμεσες γλώσσες (LESS, Sass, SCSS, CoffeeScript, TypeScript, Mustache (με χρήση Hogan) και Handlebars). Εκτός από αυτό, υπάρχει ένας τρίτος τύπος μονάδας στο Bundle Transformer - μεταεπεξεργαστές. Ο μεταεπεξεργαστής τρέχει μετά τον μεταφραστή και πριν από τον συμπιεστή. Οι ακόλουθοι μεταεπεξεργαστές είναι πλέον διαθέσιμοι: URL Rewrite CSS Postprocessor (περιλαμβάνεται στον πυρήνα) και Postprocessor modules που βασίζονται στο Autoprefixer του Andrey Sitnik.

Διεύθυνση GitHub:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Εκμάθηση τεκμηρίωσης:Η σύνδεση με υπερσύνδεσμο είναι ορατή.

Το BundleTransformer.Core παρέχει απλώς λειτουργικότητα ομαδοποίησης καιΛειτουργίες όπως η συσκότιση συμπίεσης δεν είναι διαθέσιμεςΕάν η συμπίεση και άλλες λειτουργίες πρέπει να εισαχθούν σε άλλες ενότητες, αυτό το άρθρο θα χρησιμοποιήσειBundleTransformer.NUglifyΗ μονάδα επέκτασης συμπιέζει τις ομαδοποιημένες εξόδους CSS και JS.

Το BundleTransformer.NUglify περιέχει δύο προσαρμογείς ελαχιστοποιητή: "NUglifyCssMinifier" (για σμίκρυνση κώδικα CSS) και "NUglifyJsMinifier" (για σμίκρυνση κώδικα JS). Αυτοί οι προσαρμογείς εκτελούν ελαχιστοποίηση (https://github.com/trullock/NUglify).
Επομένως, το έργο μπορεί να εισαγάγει απευθείας το BundleTransformer.NUglify με την ακόλουθη εντολή NuGet:

Αφού ολοκληρωθεί η εγκατάσταση, τροποποιήστε τη διαμόρφωση του BundleConfig.cs με τον ακόλουθο κώδικα:

Σε αυτό το σημείο, μεταβείτε στον σύνδεσμο /plugins/site/login, στον πόρο css καιΜη συμπιεσμένο, πρέπει επίσης να τροποποιήσετε τη διαμόρφωση του web.config για να κάνετε το "NUglifyCssMinifier" το προεπιλεγμένο πρόγραμμα ελαχιστοποίησης CSS.

UrlRewritingCssPostProcessor: υποστηρίζει την αυτόματη μετατροπή σχετικών διαδρομών σε απόλυτες διαδρομές στον κώδικα CSS κ.λπ.

Εντοπίστε το αρχείο web.config/configuration/bundleTransformer/core/cssκόμβος, τροποποιημένος ως εξής:

Η πλήρης διαμόρφωση έχει ως εξής:

(Τέλος)





Προηγούμενος:[Πραγματική μάχη]. Η εφαρμογή NET/C# διακόπτεται και οι εξαιρέσεις δημιουργούν αυτόματα αρχεία ένδειξης σφαλμάτων DMP
Επόμενος:Μπορεί η κάρτα δικτύου να εικονικοποιηθεί επίσης; Λεπτομερής επεξήγηση της τεχνολογίας εικονικοποίησης καρτών δικτύου Macvlan
Δημοσιεύτηκε στις 2022-11-15 18:23:22 |
Μάθετε λίγα
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 2023-7-10 18:35:50 |
ASP.NET Core (δώδεκα) front-end JS, ομαδοποίηση CSS και συμπίεση
https://www.itsvse.com/thread-10282-1-1.html

Asp.net MVC Bundle συσκευάζει όλα τα αρχεία CSS μαζί
https://www.itsvse.com/thread-4921-1-1.html
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com