Θέματα παγκοσμιοποίησης στο ASP και ASP.NET


Στήλη φωνητική υποστήριξη ASP.NET


Για να προσαρμόσετε αυτήν τη στήλη με τις ανάγκες σας, σας προσκαλούμε να υποβάλετε τις ιδέες σας σχετικά με θέματα που σας ενδιαφέρουν και θέματα για τα οποία θέλετε να δείτε απευθύνονται στο μέλλον, άρθρα Γνωσιακής βάσης και φωνητική υποστήριξη στήλες. Μπορείτε να υποβάλετε σας ιδέες και τα σχόλιά σας χρησιμοποιώντας τη φόρμα Σας ρωτήσει για αυτό . Υπάρχει επίσης μια σύνδεση για τη φόρμα στο κάτω μέρος αυτής της στήλης.

Εισαγωγή


Καλώς ορίσατε! Πρόκειται για Sukesh Khare με την ομάδα υποστήριξης προγραμματιστή του Microsoft ASP.NET. Αυτή είναι η πρώτη φορά που έχετε συντάξει μια στήλη φωνητική υποστήριξη. Ανυπομονώ να σύνταξης περισσότερες τέτοιες στήλες τους μήνες προς τα εμπρός.

Για τη στήλη αυτού του μήνα, θα κάνουμε για να συζητήσετε θέματα παγκοσμιοποίησης σε ενεργές σελίδες διακομιστή (ASP) και του ASP.NET, τα ζητήματα που θα αντιμετωπίσουμε σε ASP, τον τρόπο στοιχεία άλλαξαν στο ASP.NET 1 x και τι συνέβη με το ASP.NET 2.0 στο μπροστινό διεθνοποίηση.

Σημείωση Εάν συναντήσετε έναν όρο δεν καταλαβαίνετε, ανατρέξτε στην ενότητα "Γλωσσάρι" στο κάτω μέρος αυτής της στήλης.

Θέματα παγκοσμιοποίησης στο ASP

Πριν από το ASP.NET, δεν υπήρχε δομημένη υποστήριξη για την ανάπτυξη εφαρμογών για καθολικούς χρήστες. Κατά την πρώιμη ανάπτυξη ASP, οι προγραμματιστές όπως εγώ βρέθηκε μόνο διασκορπίζονται υποστήριξη για διεθνοποίηση σε λειτουργικά συστήματα, προγράμματα περιήγησης, οι υπηρεσίες παροχής εφαρμογών και συστημάτων υποστήριξης. Ωστόσο, εμείς σπάνια παρατηρούνται οποιαδήποτε αυτόματη συνδεσιμότητα σε αυτές τις εφαρμογές. Ευτυχώς, καταλαβαίνουμε έννοιες, όπως σύνολα χαρακτήρων, κωδικοσελίδες, πρόγραμμα περιήγησης γλώσσες και γραμματοσειρές οι οποίες μας θα μπορούσε να εκμεταλλευτείτε για την ανάπτυξη εφαρμογών για καθολικούς χρήστες.

Θα ήταν πολύ δύσκολο για το διαχωρισμό σε κατηγορίες όλες τις παγκοσμιοποίησης θέματα που έχετε δει αυτά μας στο ASP.NET. Αντί για αυτό, που θα αναφέρετε μια σειρά από θέματα που σχετίζονται με μια ποικιλία αυτά τα θέματα.

Σύνολα χαρακτήρων και κωδικοσελίδες

Όλοι γνωρίζουμε ότι οι χαρακτήρες στην οθόνη του υπολογιστή μας είναι απλώς μια σειρά byte. Σειρά byte μπορεί να δημιουργηθεί και να ερμηνεύονται με πολλούς τρόπους. Εάν η ερμηνεία χρησιμοποιεί μια κωδικοποίηση η οποία είναι διαφορετική από την κωδικοποίηση ότι ο πίνακας byte δημιουργήθηκε με, εμφανίζει την ερμηνεία ως απορριμμάτων. Σύνολα χαρακτήρων (charsets) κωδικοποίηση μορφές που χρησιμοποιούνται συνήθως από προγράμματα περιήγησης. Η ιδιότητα Codepage , που είναι κατάλληλες για το διακομιστή μετατροπών, είναι απλώς ένα πίνακα μετατροπής που καθορίζει τον τρόπο κωδικοποιούνται χαρακτήρες.

Προγράμματα περιήγησης κωδικοποίηση δεδομένων φόρμας post σύμφωνα με το τρέχον σύνολο χαρακτήρων. Εάν το τρέχον σύνολο χαρακτήρων είναι "windows-1256", τότε το byte μετάδοση στο διακομιστή είναι κωδικοποιημένος επίσης ως "windows-1256."

Όταν το ASP που ερμηνεύεται, τις συλλογές φόρμας και Querystring δεν είναι ενσωματωμένες μέχρι που αναφέρονται στον κώδικα. Κατά τη δημιουργία τους, τα δεδομένα συμβολοσειράς μετασχηματίζεται σε Unicode σύμφωνα με την τρέχουσα κωδικοσελίδα. (Από προεπιλογή, ASP και ASP.NET επεξεργασία περιεχομένου, χρησιμοποιώντας τη μορφή Unicode). Είναι πολύ σημαντικό να ορίσετε το σωστό codepage πριν από την αναφορά τις συλλογές; Διαφορετικά, η απεικόνιση Unicode στη μνήμη δεν είναι σωστή.

Για να ορίσετε μια κωδικοσελίδα, χρησιμοποιήστε Session.Codepage ή Response.Codepage. Το Response.Codepage είναι μόνο διαθέσιμο στις εκδόσεις του Microsoft Internet Information Services (IIS) 5.1 ή νεότερη έκδοση. Για πληροφορίες σχετικά με τις ακέραιες τιμές (η οποία αντιστοιχεί στο σύνολο χαρακτήρων) που θα μας να ορίσετε αυτές τις ιδιότητες, να επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:
Αναγνώριση του συνόλου χαρακτήρων
http://msdn2.microsoft.com/en-us/library/Aa752010.aspx
Για παράδειγμα, για να ορίσετε την κωδικοσελίδα για την αραβική γλώσσα, χρησιμοποιήστε τον ακόλουθο κώδικα:
Session.Codepage = 1256
Response.Codepage θα επηρεάσει μόνο την τρέχουσα απόκριση. Ωστόσο, Session.Codepage θα επηρεάσει όλες τις απαντήσεις που γίνονται από τον τρέχοντα χρήστη. Όταν το codepage ορίζεται χρησιμοποιώντας μία από αυτές τις ιδιότητες και τις συλλογές φόρμας και Querystring είναι ενσωματωμένες, αυτή η αλλαγή στη την τρέχουσα κωδικοσελίδα προκαλεί τη μέθοδο Response.Write για να μετασχηματίσετε το Unicode στη μνήμη της τρέχουσας κωδικοσελίδας. Για περισσότερες πληροφορίες σχετικά με αυτό το θέμα, επισκεφθείτε την ακόλουθη τοποθεσία MSDN στο Web:
Ορισμός κωδικοσελίδας για συμβολοσειρά μετατροπές (ASP)http://msdn2.microsoft.com/en-us/library/ms525789.aspx
Το bottom-line όταν πρόκειται για τα θέματα που σχετίζονται με charsets και κωδικοσελίδες είναι το σύνολο χαρακτήρων του υπολογιστή-πελάτη και κωδικοσελίδα του διακομιστή πρέπει να ταιριάζουν.

Αποδοχή γλώσσες

Εάν μια προγραμματιστή ASP που θέλει να γνωρίζετε ποιες γλώσσες που έχει ορίσει ο χρήστης με το πρόγραμμα περιήγησης, ο προγραμματιστής να χρησιμοποιήσετε τη μεταβλητή της μεθόδου Request.ServerVariables ("HTTP_ACCEPT_LANGUAGE") για να βρείτε τη λίστα γλωσσών που θέλατε το χρήστη για να διαβάσετε την απόκριση, (όπως τα Αγγλικά, γερμανικά ή Ινδικού) και τη σειρά προτίμησης που ο χρήστης θα θέλατε να δείτε αυτές τις γλώσσες στην. Στο ASP.NET, παρόμοιες πληροφορίες είναι παρόν στην ιδιότητα Request.UserLanguages με τη μορφή πίνακα.
Για περισσότερες πληροφορίες σχετικά με το πώς μπορείτε να χρησιμοποιήσετε αυτές τις πληροφορίες στον κώδικα ASP, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
229690 τρόπος για να ορίσετε το Αναγνωριστικό τοπικών ρυθμίσεων ASP ανά ρυθμίσεις γλώσσας του προγράμματος περιήγησης

Εμφάνιση χαρακτήρων πολλών byte ορίζει στον Internet Explorer

Η μόνη μορφή κωδικοποίησης που να εμφανίζουν ένα σύνολο χαρακτήρων πολλών byte είναι Unicode (UTF-8). Με UTF-8, μας να εμφανίσετε Κυριλλικά, ινδοί και τα ιαπωνικά όλα στην ίδια σελίδα. Εάν δεν χρησιμοποιούμε UTF-8, να μόνο δείξουμε μία από αυτές τις γλώσσες ταυτόχρονα. Για να ορίσετε το σύνολο χαρακτήρων του προγράμματος περιήγησης, χρησιμοποιήστε την ιδιότητα ιδιότητα Response.CharSet .

Στατική χαρακτήρες πολλών byte σε μια σελίδα

Για να εμφανίσετε χαρακτήρες πολλών byte που είναι αποθηκευμένα απευθείας στη σελίδα, μας πρέπει πρώτα να αποθηκεύσετε τη σελίδα με συγκεκριμένη κωδικοποίηση. UTF-8 θα είναι καλύτερα, αλλά θα λειτουργήσει επίσης μια συγκεκριμένη κωδικοσελίδα (ταιριάζουν με την κωδικοσελίδα των χαρακτήρων).

Αποθήκευση ενός αρχείου ASP χρησιμοποιώντας το Microsoft Visual InterDev δεν σας βοηθήσει εδώ, δεδομένου ότι το Visual InterDev να αποθηκεύσετε μόνο στην αγγλική γλώσσα ANSI ή Unicode. Οποιαδήποτε σελίδα ASP αποθηκευτεί ως Unicode δεν υποστηρίζεται από τις σελίδες ASP.

Στο Microsoft Visual Studio .NET, μπορείτε να αποθηκεύσετε ένα αρχείο σε οποιαδήποτε κωδικοποίηση. Υπάρχουν δύο τρόποι για να το κάνετε αυτό. Έτσι, η προεπιλογή είναι να αποθηκεύσετε το αρχείο με τη χρήση της τρέχουσας κωδικοσελίδας για το χρήστη. Ένας επιπλέον τρόπος για να αποθηκεύσετε ένα αρχείο με κωδικοποίηση είναι η εξής:
Στο μενού αρχείο , κάντε κλικ στο κουμπί " Αποθήκευση αρχείου ως". Με το
Αποθήκευση αρχείου ως παράθυρο διαλόγου, κάντε κλικ στο βέλος αναπτυσσόμενης λίστας για το
Κουμπί Αποθήκευση . Όταν κάνετε κλικ στο βέλος, οι επιλογές είναι
Και Αποθήκευση με κωδικοποίηση. Όταν κάνετε κλικ στο
Αποθήκευση με κωδικοποίηση, το παράθυρο διαλόγου Επιλογές για προχωρημένους αποθήκευση εμφανίζεται όπου μπορείτε να επιλέξετε τον τύπο κωδικοποίησης που θέλετε να εφαρμόσετε από μια λίστα με τις κωδικοσελίδες που είναι εγκατεστημένα στον υπολογιστή.


Σημείωση Αυτή η ενέργεια αλλάζει την κωδικοποίηση για την αποθήκευση λειτουργία, αλλά είναι για μία μόνο φορά. Στην επόμενη αποθήκευση θα οριστούν στην προεπιλεγμένη.

Για να αλλάξετε την προεπιλεγμένη κωδικοσελίδα, κάντε κλικ στο κουμπί Αποθήκευση επιλογές για προχωρημένους σχετικά με το
Μενού " αρχείο ". Στο πλαίσιο διαλόγου " Αποθήκευση επιλογές για προχωρημένους ", μπορείτε να ορίσετε την προεπιλεγμένη κωδικοποίηση για αποθήκευση λειτουργίες για την κωδικοσελίδα της επιλογής σας.

Οι μέθοδοι αυτές σχετίζονται με τον τρόπο, το αρχείο αποθηκεύεται στο δίσκο. Ωστόσο, για να ελέγξετε την έξοδο για ASP, όπως ήδη αναφέρθηκε, πρέπει να ορίσετε τη Session.CodePage και τις ιδιότητες της ιδιότητας Response.CharSet . Με τις υπηρεσίες IIS 5.1 και νεότερες εκδόσεις, εμείς επίσης να χρησιμοποιήσετε την ιδιότητα Response.CodePage .

Προεπιλεγμένη ΚΩΔΙΚΟΣΕΛΊΔΑ σε διακομιστή

Τις προεπιλεγμένες τοπικές ρυθμίσεις και την προεπιλεγμένη κωδικοσελίδα για τη σελίδα εξαρτώνται από τις ρυθμίσεις μητρώου για το. ΠΡΟΕΠΙΛΕΓΜΈΝΟΣ χρήστης. Να βρίσκουμε το πλήκτρο διεθνών στην ομάδα μητρώου κλειδιού HKEY_USERS \. DEFAULT\Control Panel\International. Εμείς, επίσης, να αλλάξετε τη συμπεριφορά των τοπικών ρυθμίσεων που έχει επιλεγεί από τις υπηρεσίες IIS. Για περισσότερες πληροφορίες, ανατρέξτε στην ενότητα "IIS 5.0" στο ακόλουθο άρθρο της Γνωσιακής Βάσης της Microsoft:
306044 μορφή συμπεριφορά της ημερομηνίας/ώρας διαφέρει κατά την πρόσβαση από τις ενεργές σελίδες διακομιστή

Εάν ο συνδεδεμένος χρήστης έχει τις ίδιες τοπικές ρυθμίσεις ως το προαναφερόμενο κλειδί ή την προεπιλογή του συστήματος, η ρύθμιση χρήστη έχει προτεραιότητα.

Παράδειγμα: Προεπιλεγμένες τοπικές ρυθμίσεις έχει ημερομηνία καθορισμένη μορφή ως 11.1.2004, ενώ ο συνδεδεμένος χρήστης (με το ίδιο σύνολο τοπικών ρυθμίσεων) έχει τη μορφή ημερομηνίας ως 11/1/2004. Η ρύθμιση 1/11/2004 θα ισχύσουν για τις ASP.

(Για το ASP.NET, αυτό μπορεί να ποικίλλει. Σε ορισμένες εγκαταστάσεις, ο χρήστης ASPNET θα έχει το δικό του προφίλ που θα εμφανίζονται στην HKEY_USERS κατά τη φόρτωσή. Σε άλλες, θα χρησιμοποιήσει το. ΠΡΟΕΠΙΛΕΓΜΈΝΟ προφίλ. Επίσης, μπορούμε να χρησιμοποιήσουμε το χαρακτηριστικό codepage στη δήλωση < % @ % >. Αυτό πρέπει να χρησιμοποιείται όταν το αρχείο αποθηκευτεί με διαφορετική κωδικοποίηση, στη συνέχεια, η προεπιλογή, όπως η κωδικοσελίδα 932 (Ιαπωνικά)).

Ζητήματα CODEPAGE έναντι θέματα μετατροπής γραμματοσειράς: ποιος είναι ποιος;

Ορισμένες φορές, ίσως δείτε ένα χαρακτήρα του αγγλικού ερωτηματικού (?) ή ένα πλαίσιο όπου ένας χαρακτήρας πρέπει να εμφανίζονται.
Ζητήματα μετατροπής κωδικοσελίδας
Όταν ένας χαρακτήρας αντικαθίσταται από ένα χαρακτήρα του αγγλικού ερωτηματικού (?), αυτό αποτελεί ένδειξη ότι παρουσιάστηκε ένα ζήτημα μετατροπής κωδικοσελίδας. Το αγγλικό ερωτηματικό (?) είναι ένα προεπιλεγμένο χαρακτήρα για τη μετατροπή της κωδικοσελίδας και βασικά σημαίνει ότι το λειτουργικό σύστημα δεν είναι δυνατό να χειριστεί την τιμή του χαρακτήρα και να μετατρέψετε. Αντικαθιστά την τιμή του χαρακτήρα με ένα αγγλικό ερωτηματικό (?). Αυτό μπορεί να σημαίνει ότι ο χαρακτήρας έχει μη έγκυρη τιμή για την κωδικοσελίδα ή ότι δεν είναι εγκατεστημένη η κωδικοσελίδα που απαιτείται για τη μετατροπή.
Ζητήματα μετατροπής γραμματοσειράς
Όταν ένας χαρακτήρας αντικαθίσταται από ένα πλαίσιο, αυτό αποτελεί ένδειξη ότι παρουσιάστηκε ένα ζήτημα μετατροπή της γραμματοσειράς. Αυτό συμβαίνει στην πλευρά πελάτη όταν ο υπολογιστής-πελάτης δεν έχει τη σωστή γραμματοσειρά για να εμφανιστούν σωστά οι χαρακτήρες. Για παράδειγμα, όταν ένας χαρακτήρας είναι από το ιαπωνικό σύνολο χαρακτήρων και ο υπολογιστής-πελάτης δεν διαθέτει τις γραμματοσειρές ιαπωνικών, το ιαπωνικοί χαρακτήρες εμφανίζεται ως πλαίσιο.

Στη συνέχεια, θα εξηγήσω πώς πράγματα αλλάξουν στο ASP.NET 1.x και πώς αυτές οι αλλαγές επηρεάζουν θέματα παγκοσμιοποίησης στο πλαίσιο του ASP.NET.

Θέματα παγκοσμιοποίησης στο ASP.NET 1.x:

Με το ASP.NET, θεσπίστηκαν τρία σημαντικά στοιχεία:
  • Η ετικέτα < διεθνοποίηση > στο αρχείο web.config
    Η ετικέτα < διεθνοποίηση > μας απομακρύνει από την αντίθεση με τον τόνο έννοιες κωδικοσελίδες και charsets και μας επιτρέπει να ελέγχουν τις περισσότερες από τις παραλλαγές στο ASP.NET.
  • Ο χώρος ονομάτων System.Globalization
    Ο χώρος ονομάτων παγκοσμιοποίησης μας παρέχει προγραμματισμού δύναμη του χειρισμού της παγκοσμιοποίησης.
  • Η έννοια των αρχείων πόρων έχει βελτιωθεί σημαντικά.
    Εμείς δεν αντιμετωπισθεί αρχεία πόρων με τον τρόπο που χρησιμοποιήσαμε σε σελίδες ASP. Τώρα, τα αρχεία πόρου είναι με τη μορφή αρχείων XML όταν σχεδιάζουμε και ανάπτυξη τους, και υπάρχουν όπως συναρμολογεί κατά το χρόνο εκτέλεσης.
Η ετικέτα παραμέτρων παγκοσμιοποίησης:

Δύο σημαντικές ρυθμίσεις στο tag είναι οι εξής:
<globalization             requestEncoding="utf-8" 
responseEncoding="utf-8" />
Ακολουθεί άλλες περιοχές πιθανές ρυθμίσεις:
fileEncodingΚαθορίζει την προεπιλεγμένη κωδικοποίηση για .aspx, .asmx και .asax αρχείου κατά την ανάλυση. Unicode και UTF-8 αρχεία που έχουν αποθηκευτεί με το πρόθεμα του σήμανση σειράς byte (με υπογραφή) θα γίνεται αυτόματη αναγνώριση, ανεξάρτητα από την τιμή της fileEncoding.
ΚουλτούραΚαθορίζει την προεπιλεγμένη κουλτούρα για την επεξεργασία των εισερχόμενων αιτήσεων Web (που ισχύουν για τις μεθόδους κλάσεων από το χώρο ονομάτων System.Globalization).
uiCultureΚαθορίζει την προεπιλεγμένη κουλτούρα για την επεξεργασία αναζήτησης πόρων που εξαρτώνται από την τοπική ρύθμιση (συγκροτήσεις δορυφόρων).
Για περισσότερες πληροφορίες σχετικά με τις συμβολοσειρές κουλτούρα (τιμές της καλλιέργειας και uiculture), επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:Αυτές οι ρυθμίσεις εφαρμόζονται με ASP.NET, μετά την ολοκλήρωση της απάντησης, και πριν από την αίτηση παράδοση στην εφαρμογή σας. Για responseEncoding, του buffer που δημιουργείται για την αποθήκευση της εξόδου ορίζεται σε αυτήν την κωδικοποίηση. Όλα τα στοιχεία που οδηγεί σε αυτό το buffer θα είναι κωδικοποιημένο σύμφωνα με τη ρύθμιση όπως εισάγεται στο buffer.

Για requestEncoding, ο χρόνος εκτέλεσης θα διαβάσει την αίτηση και να ερμηνεύσει σύμφωνα με τις ρυθμίσεις σε αυτήν την ενότητα. Αυτή είναι μια ρύθμιση που μπορεί να προκαλέσει προβλήματα, ωστόσο. Ο παρακάτω πίνακας δείχνει τη διάταξη έγκυρη ακολουθία byte UTF-8 bit.

Αν η τιμή του χαρακτήρα που βρίσκεται στο το τυπικό ASCII 7 bit, η τιμή του byte δεν τροποποιείται. Εάν η τιμή είναι μεγαλύτερη από 127, θα πρέπει να ακολουθεί τους παρακάτω κανόνες. Το αρχικό σύνολο bits δείχνει πόσοι χαρακτήρες στην ακολουθία. Κάθε byte μετά την πρώτη πρέπει να αρχίζει με το πρώτο bit οριστεί στην τιμή 1.

Διάταξη UTF-8 byte:
Byte πουBITSαπεικόνιση
170vvvvvvv
211110vvvvv 10vvvvvv
3161110vvvv 10vvvvvv 10vvvvvv
42111110vvv 10vvvvvv 10vvvvvv 10vvvvvv
Αυτό είναι όπου προέρχεται το πρόβλημα. Εάν το πρόγραμμα περιήγησης κωδικοποιεί την αίτηση σύμφωνα με ένα μόνο byte κωδικοποίησης (όπως iso 8859-1), οι τιμές πάνω από 127 δεν θα ισχύει σύμφωνα με την παραπάνω διάταξη. Όταν διαβάζονται στο buffer UTF-8, τους μη έγκυρους χαρακτήρες απορρίπτονται απλώς από το αποτέλεσμα.

Αλλαγές κωδικοποίησης χρόνου εκτέλεσης

Στην περίπτωση Application_BeginRequest , μας να τροποποιήσετε την τιμή της requestEncoding και να τεθούν σε ισχύ πριν από την επεξεργασία της αίτησης. Για την απάντηση, το συμβάν Page_PreRender είναι η τελευταία ευκαιρία για να τροποποιήσετε την κωδικοποίηση της εξόδου. Επίσης Σημειώστε ότι Response.Write θα τεθεί χαρακτήρες σε αυτό το buffer, μόλις ονομάζουμε, έτσι θα πρέπει να έχετε το δικαίωμα κωδικοποίηση σύνολο πριν από τη χρήση Response.Write.

Αρχικά δεδομένα είναι μη Unicode: πώς να εξακολουθεί να κάνετε τον Internet Explorer ερμηνεία πολλαπλών byte charsets;

Όταν κάνουμε ASP.NET συμπεριφέρονται όπως ASP, εάν πρέπει να. Για να κάνετε αυτό συμβεί, πρέπει να ορίσετε το responseEncoding και το requestEncoding σε windows-1252 (μια πιο ολοκληρωμένη κωδικοποίηση από iso 8859-1) και χρησιμοποιήστε την ιδιότητα ιδιότητα Response.Charset για να εμφανίσετε το κείμενο σωστά. Αυτό λειτουργεί, επειδή 1252 των windows είναι ένα σχήμα κωδικοποίησης μονό byte και δεν τροποποιεί τα byte που προστίθενται στο buffer. Ως εκ τούτου, χαρακτήρες διπλού byte αποστέλλονται ως μια σειρά μόνο byte. Εμείς στη συνέχεια να υποδείξετε στον Internet Explorer τον τρόπο ερμηνείας των byte, χρησιμοποιώντας την ιδιότητα ιδιότητα Response.Charset . Αυτό το σενάριο μπορεί να είναι απαραίτητο εάν τα αρχικά δεδομένα δεν έχουν αποθηκευτεί ως Unicode ή UTF-8, όπως μια τιμή επιστροφής από ένα αντικείμενο COM, ή εάν τα δεδομένα είναι αποθηκευμένα στον Microsoft SQL Server σε ένα πεδίο μη N (όπως varchar).

Θέματα παγκοσμιοποίησης SQL Server και του ASP.NET

Είσοδος δεδομένων Unicode σε SQL Server
Είναι ο καλύτερος τρόπος για την αποθήκευση δεδομένων στον SQL Server να χρησιμοποιεί Unicode. Κάθε φορά που χρησιμοποιούμε INSERT, UPDATE, κ.λπ., εάν υπάρχει ακόμα πιθανότητα τουλάχιστον δεδομένων Unicode, πρέπει να προσθέσετε ένα N πριν από την τιμή. Αυτό σας λέει της βάσης δεδομένων ότι η τιμή είναι Unicode. Ένα καλό παράδειγμα αυτού είναι τα αντικείμενα ADO. Αυτό το κάνουν αυτόματα αν χρησιμοποιούμε το αντικείμενο Recordset για να προσθέσετε νέες εγγραφές.

Το ακόλουθο είναι ένα παράδειγμα:
INSERT INTO MusicAlbum (Album_ID, [Year], Name, Artist_ID, Company_ID) VALUES (12345, 2005, N'Abida', 4653, 403)Or:
Dim t As String = "INSERT INTO MusicAlbum(Album_ID, [Year], Name, Artist_ID, Company_ID) VALUES (12345, 2005, N'" & TextBox1.Text & "', 4653, 403)"

Ημερομηνία/ώρα σε SQL Server
Συνήθως έχετε τις γνώσεις σχετικά με την κουλτούρα και τις τοπικές ρυθμίσεις της ημερομηνία/ώρα την ερμηνεία μας εφαρμογής ASP.NET. Ωστόσο, ενώ-ώθησης δεδομένων ημερομηνία/ώρα προς και από εξωτερικές πηγές, εκτελούμε τον κίνδυνο misinterpreting τις μορφές ημερομηνίας/ώρας. Αυτό συμβαίνει επειδή δεν μπορούμε να εγγυηθούμε πάντα την κουλτούρα και τις τοπικές ρυθμίσεις της εξωτερικής προέλευσης να είναι ίδια με αυτή την εφαρμογή. Στον SQL Server είναι αυτό δυνατό να επιλυθούν χρησιμοποιώντας την ' τρέχουσα γλώσσα' χαρακτηριστικού στο connectionstring της σύνδεσης που προσδιορίζεται στη βάση δεδομένων SQL. Μπορούμε να παρέχουμε την ίδια ρύθμιση γλώσσας στο connectionstring , όπως είναι η κουλτούρα μας εφαρμογής. Αυτό μας προστατεύει από τον κίνδυνο παρερμηνεία, επειδή ο SQL Server αποδέχεται πάντα και στέλνει τα δεδομένα ημερομηνίας/ώρας σε συναίνεση με την ανωτέρω ρύθμιση.

System.Globalization χώρου ονομάτων

Αυτός ο χώρος ονομάτων είναι ο πυρήνας Διεθνοποίηση και τοπική προσαρμογή στο .NET Framework. Η κύρια κλάση που χρησιμοποιείται σε αυτό το πεδίο ονομάτων είναι η κλάση CultureInfo . Κατέχει κουλτούρα συγκεκριμένες πληροφορίες, όπως η μορφή ημερομηνίας/ώρας, μορφές αριθμών, σύγκριση πληροφορίες και πληροφορίες κειμένου. Για περισσότερες πληροφορίες σχετικά με την κλάση CultureInfo , επισκεφθείτε την ακόλουθη τοποθεσία MSDN στο Web:

Ουδέτερη καλλιέργειες έναντι συγκεκριμένων καλλιέργειες

Ουδέτερη κουλτούρα είναι μια κουλτούρα που σχετίζεται με μια γλώσσα, αλλά όχι μια συγκεκριμένη χώρα ή περιοχή. Μια συγκεκριμένη κουλτούρα σχετίζεται τόσο με μια γλώσσα και μια συγκεκριμένη χώρα.

Παράδειγμα: "DE" (ουδέτερη κουλτούρα) για τη γερμανική γλώσσα, αλλά είναι "de-AT" (συγκεκριμένης κουλτούρας) για τη γερμανική γλώσσα, όπως το εκφωνείται στην Αυστρία. Ουδέτερη καλλιέργειες δεν μπορεί να χρησιμοποιηθεί για τη μορφοποίηση.

Τρέχον νήμα και κουλτούρα ευαισθητοποίησης του .NET Framework κλάσεις

Όλες οι κλάσεις και οι μέθοδοι στη βιβλιοθήκη του .NET Framework, όπου θα αναμένεται το αποτέλεσμα να είναι εξαρτάται από την καλλιέργεια διαθέτει δύο ενσωματωμένες συμπεριφορές:
  • Έχουν τη δυνατότητα να μας καθορίσετε τον κωδικό κουλτούρα κατά την παροχή τα ορίσματα έτσι ώστε το αποτέλεσμα βασίζεται η κουλτούρα που έχει καθοριστεί. Αυτό είναι προαιρετικό.
  • Εάν αυτό δεν έγινε (συνήθως είναι), οι κλάσεις είναι έξυπνο να διατηρήσετε μια επιταγή για την ιδιότητα Thread.CurrentThread.CurrentCulture και εργασία με την οποία.
Να τροποποιήσουμε αυτήν την ιδιότητα τιμή με κώδικα που είναι παρόμοιο με το ακόλουθο:
    Dim ci As CultureInfo        ci = New CultureInfo("de-AT")
Thread.CurrentThread.CurrentCulture = ci
Σε αυτό το παράδειγμα κώδικα, "de" αντιπροσωπεύει τη γερμανική γλώσσα και "AT" αντιπροσωπεύει την Αυστρία. Έτσι, σε αυτήν την περίπτωση, η DateTime.Now(). ToString μέθοδος θα επιστρέψει την ημερομηνία και την ώρα σε μια αντίστοιχη μορφή τον τρόπο την ημερομηνία και την ώρα που εκφράζονται σε της γερμανικής γλώσσας στην Αυστρία.

Πλαίσιο εξασφαλίζει (ως εξής) ότι η ιδιότητα CurrentCulture είναι πάντα προετοιμασία:
  1. Ό, τι ορίζεται επίπεδο προγραμματισμού.
  2. Σε περίπτωση που δεν έχει ρητά οριστεί από τον προγραμματιστή, η ιδιότητα έχει συλλεχθεί από τα αρχεία ρύθμισης παραμέτρων (< διεθνοποίηση > tag).
  3. Εάν λείπει η ιδιότητα εκεί, είναι η καλλιέργεια, στον οποίο εκτελείται ο διακομιστής Web. Αυτό είναι συνήθως την ουδέτερη κουλτούρα που αντιστοιχεί στη γλώσσα του λειτουργικού συστήματος.

Αρχεία πόρων

Όλα .resx, .resource αρχείων και τα αρχεία που έχουν το χαρακτηριστικό Δημιουργία ενέργειας σε Ενσωματωμένο πόρο που προστίθενται σε ένα έργο του ASP.NET στο Visual Studio .NET, αυτόματα μεταγλωττιστεί και ενσωματωμένες σε συγκρότηση εφαρμογής ως τμήμα της διακήρυξης. Αυτό μπορεί ακόμη και να γίνει με μη αυτόματο τρόπο, χρησιμοποιώντας το βοηθητικό πρόγραμμα δημιουργίας αρχείου πόρων (RESGEN) μέσω εντολών Visual Studio .NET. Για περισσότερες πληροφορίες, επισκεφθείτε την ακόλουθη τοποθεσία MSDN στο Web:Αυτή είναι μια γενική έννοια που εφαρμόζεται κάθε φορά που χρειαζόμαστε για τη διαχείριση πόρων εφαρμογών που είναι άσχετες διεθνοποίηση. Ωστόσο, όταν Υλοποιούμε παγκοσμιοποίησης, θα πρέπει να χρησιμοποιούμε δορυφορικές συγκροτήσεις.

Δορυφορικές συγκροτήσεις

Δορυφορικές συγκροτήσεις που μπορούν να χρησιμοποιηθούν σε ένα έργο του ASP.NET, όταν θα βεβαιωθείτε ότι ισχύουν τα ακόλουθα:
  1. Όλα τα στοιχεία του περιβάλλοντος εργασίας χρήστη σε όλα τα αρχεία aspx πρέπει να είναι εφοδιασμένα με αναγνωριστικό και runat = server χαρακτηριστικά.
  2. Δημιουργείται .resx ξεχωριστά αρχεία. Καθένα από αυτά πρέπει να αντιστοιχούν σε κάθε καλλιέργεια θέλουμε μας εφαρμογής για την υποστήριξη.
  3. Εμείς πρέπει να αποφασίσετε ένα κοινό όνομα για όλα αυτά τα αρχεία για π.χ. «Συμβολοσειρές».
  4. Εμείς ονομάστε τα αρχεία .resx ξεχωριστά με το παρακάτω .resx κωδικός γλώσσας commonfirstname.-regioncodeσύμβασης ονομασίας (για παράδειγμα: Strings.de-AT.resx, Strings.en-GB.resx).
  5. Θα πρέπει να έχουμε το αρχείο πόρων
    commonfirstname.resx (Strings.resx) που διαθέτει όλες τις συμβολοσειρές όπως θέλουμε εμφανίζεται στην προεπιλεγμένη περίπτωση.
  6. Εγγραφή κώδικα για την ανίχνευση τοπικής ρύθμισης του χρήστη και ορίσετε την ιδιότητα Thread.CurrentThread.CurrentUICulture για να ταιριάζουν σε αυτό.
  7. Εγγραφή κώδικα για τη φόρτωση πόρων χρησιμοποιώντας την κλάση ResourceManager .
  8. Σύνταξη κώδικα για να εξαγάγετε συμβολοσειρές από το αντικείμενο φορτωθεί και αντιστοιχίστε τις με στοιχεία περιβάλλοντος εργασίας χρήστη.
Όταν ολοκληρώσετε αυτά τα βήματα, Visual Studio.NET θα μεταγλώττιση Strings.resx και να ενσωματώσετε σε η συγκρότηση της εφαρμογής (MyGlobalizationTestProjectName.dll). Ωστόσο, για όλα τα άλλα αρχεία .resx, θα δημιουργήσει αρχεία ξεχωριστό dll που δεν διαθέτουν εκτελέσιμο κώδικα, αλλά μόνο δεδομένα πόρων. Αυτές πραγματικά ονομάζονται δορυφορικές συγκροτήσεις. Επίσης, Visual Studio .NET τοποθετεί αυτά στη δομή του φακέλου παρόμοιο με το ακόλουθο:
MyGlobalizationTestProjectName        |------- bin
|------en-US
MyGlobalizationTestProjectName.resources.dll
|------ja-JP
MyGlobalizationTestProjectName.resources.dll
|------de-AT
MyGlobalizationTestProjectName.resources.dll

Διαφορά μεταξύ CurrentCulture και CurrentUICulture

Ενώ οι μέθοδοι κλάσεων στο χώρο ονομάτων System.Globalization εξαρτώνται από την ιδιότητα Thread.CurrentThread.CurrentCulture για να δώσετε το προϊόν τους, την κλάση ResourceManager που φορτώνει η συγκρότηση πόρων εξαρτάται από την ιδιότητα Thread.CurrentThread.CurrentUICulture για να φορτώσετε το κατάλληλο δορυφορική συγκρότηση. Ακολουθεί ένα παράδειγμα κώδικα C#:
using System.Globalization;using System.Threading;
using System.Resources;

//Load resources.
protected ResourceManager gStrings = new ResourceManager("MyGlobalizationTestProjectName.strings", typeof(MyTestWebFormName).Assembly);

// Get the user's preferred language.
string sLang = Request.UserLanguages[0];
// Set the thread's culture for formatting, comparisons, etc.
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(sLang);
// Set the thread's UICulture to load resources
// from satellite assembly.
Thread.CurrentThread.CurrentUICulture = new CultureInfo(sLang);

private void Page_Load(object sender, System.EventArgs e)

{

if (!IsPostBack)

{
// Get strings from resource file and assign to UI elements.
head1.InnerHtml = gStrings.GetString("satellite.head1");
p1.InnerHtml = gStrings.GetString("satellite.p1");
sp1.InnerHtml = gStrings.GetString("satellite.sp1");
sp2.InnerHtml = gStrings.GetString("satellite.sp2");
butOK.Text = gStrings.GetString("satellite.butOK");
butCancel.Value = gStrings.GetString("satellite.butCancel");
}

}

Η σειρά στην οποία ASP.NET επιλέγει δορυφορικές συγκροτήσεις:

Όταν ολοκληρώσετε τον ορισμό του νήματος CurrentUICulture, ASP.NET επιλέγει αυτόματα τους πόρους που ταιριάζουν, με την εξής σειρά:
  • Εάν βρεθεί μια δορυφορική συγκρότηση με μια κουλτούρα που ταιριάζουν, χρησιμοποιούνται οι πόροι από αυτή τη συγκρότηση.
  • Εάν βρεθεί μια δορυφορική συγκρότηση με ουδέτερη κουλτούρα που ταιριάζει με το CurrentUICulture, χρησιμοποιούνται πόροι από αυτή τη συγκρότηση.
  • Εάν δεν βρεθεί αντιστοιχία για το CurrentUICulture, χρησιμοποιούνται τα αποθηκευμένα στη συγκρότηση εκτελέσιμο πόρους επιστροφής.
Σημείωση Αυτό βασίζεται στη γενικότερη διαδικασία επιστροφή πόρων. Για περισσότερες πληροφορίες, επισκεφθείτε την ακόλουθη τοποθεσία MSDN στο Web:

Μη αυτόματη δημιουργία δορυφορικές συγκροτήσεις:

Αυτή η χρήση του δορυφορικές συγκροτήσεις είναι όπου Visual Studio .NET δημιουργεί τις συγκροτήσεις ίδια. Visual Studio .NET δεν συγκροτήσεις δορυφόρων ισχυρού ονόματος από προεπιλογή, ωστόσο. Εάν θέλετε να αλλάξετε αυτές τις επιλογές, θα πρέπει να δημιουργήσετε με μη αυτόματο τρόπο δορυφορικές συγκροτήσεις. Για περισσότερες πληροφορίες, επισκεφθείτε την ακόλουθη τοποθεσία MSDN στο Web:.

Τι συνέβη με το ASP.NET 2.0 στο μπροστινό παγκοσμιοποίησης;

Η διαδεδομένη χρήση του ASP.NET και τα είδη των προβλημάτων που θα βλέπουμε όσον αφορά τις δυνατότητες διεθνοποίηση στο ASP.NET 2.0 εξακολουθούν να είναι κάποια απόσταση προς τα εμπρός. Ωστόσο, θα ήταν καλό να λάβει μια σύντομη ματιά τι κατεύθυνση της μεθοδολογίας της παγκοσμιοποίησης είναι επικεφαλής για τις εφαρμογές web.

Υποστήριξη παγκοσμιοποίησης στο ASP.NET 2.0 έχει υποστεί ιδεόγραμμα και οι προγραμματιστές Web έχουν τη δυνατότητα να κάνετε τη μετάφραση των εφαρμογών Web τόσο εύκολη όσο και για εφαρμογές που βασίζονται σε Windows. Ακολουθεί μια λίστα των δυνατοτήτων που αποτελούν τα θεμέλια της Παγκόσμιος μεθοδολογία στο ASP.NET 2.0:

Πόρων ισχυρού τύπου Στον πυρήνα των το .NET Framework 2.0 έκδοση είναι η υποστήριξη για πόρων ισχυρού τύπου που παρέχουν στους προγραμματιστές Intellisense και απλοποιεί κώδικα που απαιτούνται για την πρόσβαση σε πόρους κατά το χρόνο εκτέλεσης.

Η διαχείριση πόρων επεξεργασίας Visual Studio .NET 2.0 περιλαμβάνει ένα νέο πρόγραμμα επεξεργασίας πόρων με καλύτερη υποστήριξη για τη δημιουργία και διαχείριση εγγραφές πόρων, συμπεριλαμβανομένων των συμβολοσειρών, εικόνες, εξωτερικά αρχεία και άλλους τύπους σύνθετων.

Η δημιουργία πόρων για φόρμες Web Οι προγραμματιστές φορμών Windows είχαν ήδη τα πλεονεκτήματα της αυτόματη διεθνών ρυθμίσεων. Visual Studio .NET 2005 θα υποστηρίζουν τώρα ταχεία διεθνών ρυθμίσεων από την αυτόματη δημιουργία πόρων για φόρμες Web, χρήστη στοιχεία ελέγχου και οι κύριες σελίδες.

Βελτιωμένη υποστήριξη χρόνου εκτέλεσης Παρουσίες ResourceManager είναι διαχειριζόμενο από το χρόνο εκτέλεσης και εύκολα προσπελάσιμα για κώδικα διακομιστή μέσω πιο προσπελάσιμης διασυνδέσεις προγραμματισμού.

Εκφράσεις μετάφρασης Σύγχρονα δηλωτική εκφράσεις για ιστοσελίδες υποστηρίζει αντιστοίχιση εγγραφές πόρων για τον έλεγχο της ιδιότητες, ιδιότητες HTML ή στατικό περιοχές περιεχομένου. Οι παραστάσεις είναι επεκτάσιμη, παρέχει πρόσθετους τρόπους για τον έλεγχο της διαδικασίας σύνδεσης μεταφρασμένο περιεχόμενο HTML έξοδο.

Επιλογή αυτόματης κουλτούρα Διαχείριση επιλογής κουλτούρα για κάθε αίτηση Web μπορεί να συνδεθεί αυτόματα με τις προτιμήσεις περιήγησης.

Μοντέλο υπηρεσίας παροχής πόρων Ένα νέο μοντέλο παροχής πόρων επιτρέπει στους προγραμματιστές να πόρους κεντρικού υπολογιστή στα αρχεία προέλευσης δεδομένων εναλλακτική όπως απλών αρχείων και οι πίνακες της βάσης δεδομένων, ενώ το μοντέλο προγραμματισμού για την πρόσβαση σε αυτούς τους πόρους παραμένει σταθερή.

Για περισσότερες πληροφορίες σχετικά με τη μεθοδολογία της παγκοσμιοποίησης στο ASP.NET 2.0, επισκεφθείτε την ακόλουθη τοποθεσία MSDN στο Web:
ASP.NET 2.0 μετάφρασης δυνατότητες: Μια νέα προσέγγιση για την Localizing εφαρμογές Web
http://msdn2.microsoft.com/en-us/library/ms379546(VS.80).aspx

Συμπέρασμα

Αυτό ήταν όλο προς το παρόν πληροφορίες σχετικά με θέματα παγκοσμιοποίησης στο ASP και ASP.NET. Ελπίζω αυτό το άρθρο θα σας βοηθήσει μερικούς πελάτες προβλημάτων τους παγκοσμιοποίησης στο ASP και ASP.NET πριν επιλέγουν να επικοινωνήσετε με την υπηρεσία υποστήριξης της Microsoft. Που θα τερματιστεί με τα παρακάτω που νομίζατε ότι:

"Όπου και όποτε σχεδιάζετε, σκεφτείτε το εκατομμύρια ανθρώπους να εξουσιοδοτούν όλο τον κόσμο. Κάνετε σας λύσεις έτοιμο World! Microsoft εργαλεία και τεχνολογίες διευκολύνουν ολοκληρώθηκε."

Εμείς θα επεξεργαστεί ξανά επόμενο μήνα με ένα άλλο θέμα ενδιαφέρουσα.

Σας ευχαριστούμε για το χρόνο σας.
Για περισσότερες πληροφορίες σχετικά με θέματα παγκοσμιοποίησης στο ASP και ASP.NET, ανατρέξτε στις ακόλουθες τοποθεσίες της Microsoft στο Web:
Setlocale από και GetLocale σε vbscript
http://msdn2.microsoft.com/en-us/library/5xf99h19.aspx
Παγκόσμιος βήμα προς βήμα
http://msdn.microsoft.com/en-us/goglobal/bb688110
Μεταβείτε καθολικό: Localizing εφαρμογές δυναμικού περιεχομένου Web με IIS 5.0 και του SQL Server
http://msdn.microsoft.com/msdnmag/issues/01/05/global/default.aspx
Μεταβείτε καθολικό: Σχεδιάζετε την τοποθεσία Web βασισμένη σε ASP για υποστήριξη παγκοσμιοποίησης
http://msdn.microsoft.com/msdnmag/issues/0700/localize/default.aspx
315616 τρόπος για να εντοπίσετε μια γλώσσα προγράμματος-πελάτη σε ένα διακομιστή Active σελίδων σελίδα των υπηρεσιών IIS
http://support.microsoft.com/?id=315616
Γράφημα ID(LCID) τοπικές ρυθμίσεις
http://msdn2.microsoft.com/en-us/library/0h88fahh.aspx
Πόροι και μετάφρασης χρησιμοποιώντας το .NET Framework SDK
http://msdn2.microsoft.com/en-us/library/aa309421(VS.71).aspx
Πόρους σε εφαρμογές ASP.NET
http://msdn2.microsoft.com/en-us/library/1ztca10y(vs.71).aspx
Στοιχείο παραμέτρων ASP.NET < διεθνοποίηση >
http://msdn2.microsoft.com/en-us/library/hy4kkhe0(vs.71).aspx
Σχεδίαση και υλοποίηση κατευθυντήριες γραμμές για προγράμματα-πελάτες Web - Διεθνοποίηση και τοπική προσαρμογή
http://msdn2.microsoft.com/en-us/library/ms978628.aspx
Επίσημη τοποθεσία Microsoft – καθολική ανάπτυξη και πληροφορική πύλης
http://msdn.microsoft.com/en-us/goglobal/bb688096
Ανάπτυξη εφαρμογών έτοιμο World
http://msdn2.microsoft.com/en-us/library/h6270d0z(vs.71).aspx
Αρχιτεκτονική παγκοσμιοποίησης για το ASP.NET
http://msdn2.microsoft.com/en-us/library/aa478974.aspx
Εταιρικό μετάφρασης Toolkit - για την ανάπτυξη εφαρμογών μεταφρασμένη Microsoft ASP.NET
http://msdn2.microsoft.com/en-us/library/aa479334.aspx
839861 Α System.Resources.MissingManifestResourceException εξαίρεση προκύπτει όταν προσπαθείτε να αποκτήσετε πρόσβαση σε μια μεταφρασμένη πόρων

Γλωσσάρι

ANSI Συμβολίζει το αμερικανικό εθνικών προτύπων ινστιτούτο. Στο πλαίσιο αυτό, που αντιπροσωπεύει μια συγκεκριμένη κωδικοσελίδα για μια συγκεκριμένη γλώσσα/χαρακτήρα σύνολο. Αφορά συνήθως την αγγλική κωδικοσελίδα (windows-1252).

ASCII Ένα σχήμα κωδικοποίησης 1 byte (ή 7 bit). Μόνο οι χαρακτήρες στην περιοχή 0-127 είναι τυποποιημένες. Η περιοχή 128-255 είναι επεκτάσεις ASCII και δεν μέρος του προτύπου. Ένα παράδειγμα είναι η διαφορά μεταξύ της άνω περιοχής του γραφήματος OEM ASCII και ο πίνακας ASCII VB.

Σύνολο χαρακτήρων Η ρύθμιση χρησιμοποιείται κυρίως για Internet Explorer και τα προγράμματα περιήγησης που σας ενημερώνει ότι το πρόγραμμα περιήγησης για τον τρόπο ερμηνείας των δεδομένων χαρακτήρων. Παράδειγμα: Ιδιότητα Response.charSet = "iso-8859-1."

Κωδικοσελίδα Έναν πίνακα μετατροπής που καθορίζει τον τρόπο κωδικοποιούνται χαρακτήρες (συνήθως χρησιμοποιείται για διακομιστές).

Παγκόσμιος Διεθνοποίηση είναι μια διαδικασία από τη σχεδίαση και τη δημιουργία μιας εφαρμογής, ώστε να τηρούνται οι μοναδικές απαιτήσεις μια κουλτούρα, περιοχή ή εθνικών και γλωσσικής ανάγκες. Με άλλα λόγια σχεδιάζετε μια εφαρμογή με τρόπο ώστε αυτό να είναι μεταφρασμένοι αργότερα είναι Παγκόσμιος.

Τοπικές ρυθμίσεις/κουλτούρας Γλώσσα και περιοχή συγκεκριμένες μορφές/προτιμήσεις συμπεριλαμβάνοντας, ημερομηνία και μορφές ημερολογίου, μορφές ώρας, μορφές νομισματικής μονάδας, το περίβλημά, ταξινόμησης και σύγκριση συμβολοσειράς, μορφές διευθύνσεων, τηλέφωνο μορφές αριθμών, μεγέθη χαρτιού, μονάδα μέτρησης, η εγγραφή κατεύθυνση, κ.λπ.

LocaleID (LCID) Μια τιμή DWORD που καθορίζει το αναγνωριστικό γλώσσας και το αναγνωριστικό ταξινόμησης. Μπορεί να χρησιμοποιηθεί για να καθορίσετε τις μορφές συγκεκριμένη περιοχή για ex ημερομηνία/ώρα κ.λπ θα πρέπει να μορφοποιηθούν σύμφωνα με.

Της δυνατότητας μετάφρασης του Δυνατότητα μιας εφαρμογής για την παρουσίαση του περιεχομένου για το ζητούμενο γλώσσα.

Τοπική προσαρμογή Η μετάφραση είναι η διαδικασία μεταφράζοντας ένα περιβάλλον εργασίας χρήστη σε συγκεκριμένες γλώσσες ή/και τις τοπικές ρυθμίσεις.

Χαρακτήρων πολλών byte, ορισμός Ένας χαρακτήρας που στο οποίο αποτελούνται οι χαρακτήρες των δύο ή περισσότερα byte, όπως τα ιαπωνικά. UTF-8 εμπίπτει επίσης σε αυτήν την κατηγορία. (Unicode είναι τεχνικώς αυτής της κατηγορίας, αλλά στα Windows, έχει τη δική του κατηγορία.)

Unicode Ένα σχήμα κωδικοποίησης 2-byte. Τα Windows χρησιμοποιούν εσωτερικά Unicode. Οποιαδήποτε API ειδικά για το Unicode είναι καθορίζεται από ένα "W" στο τέλος του ονόματος της συνάρτησης. Επίσης γνωστή ως wide char δεν μπορεί να χρησιμοποιηθεί απευθείας από τις εφαρμογές web.

UTF-8 Μια κωδικοποίηση χαρακτήρων όπου χαρακτήρα μπορεί να αναπαρασταθεί από 1-6 byte. Στα Windows, το εύρος είναι 1-3 byte. Δεν υποστηρίζεται στην περιοχή NT4 για εφαρμογές web.
Για περισσότερες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
Υποστήριξη UTF8 175392


Ορισμός ευρύ χαρακτήρα Ένα ψευδώνυμο για το Unicode. Είναι επίσης γνωστό ως DBCS (σύνολο χαρακτήρων δύο byte), UCS-2, UTF-16.
Όπως πάντα, αίσθηση ελεύθερη να υποβάλουν ιδέες σχετικά με θέματα που θέλετε στο μέλλον απευθύνεται στήλες ή της Γνωσιακής Βάσης της Microsoft, χρησιμοποιώντας το
Ερώτηση για την φόρμα.