Globalisasi masalah ASP dan ASP.NET


Dukungan ASP.NET suara kolom


Untuk menyesuaikan kolom ini dengan kebutuhan Anda, kami mengundang Anda untuk mengirimkan ide-ide Anda tentang topik yang menarik minat Anda dan masalah yang Anda ingin melihat ditangani di masa depan artikel basis pengetahuan dan kolom dukungan suara. Anda dapat mengirim ide dan umpan balik menggunakan formulir Meminta untuk itu . Ada juga tautan ke formulir di bawah kolom ini.

Pendahuluan


Selamat! Ini adalah Sukesh Khare dengan tim dukungan Microsoft ASP.NET Developer. Ini adalah pertama kali saya telah menulis kolom dukungan suara. Saya berharap untuk otorisasi kolom lebih seperti di bulan depan.

Untuk bulan ini kolom, saya akan membahas isu-isu globalisasi Active Server Pages (ASP) dan ASP.NET, masalah yang dihadapi di ASP, bagaimana hal telah berubah ASP.net 1 x, dan apa yang dimaksud dengan ASP.NET 2.0 di depan globalisasi.

Catatan Jika Anda menemukan istilah yang tidak memahami, lihat bagian daftar kata di bagian bawah kolom ini.

Globalisasi masalah dalam ASP

Sebelum ASP.NET, ada tidak ada dukungan terstruktur untuk pengembangan aplikasi untuk pengguna global. Selama pengembangan awal ASP, pengembang seperti sendiri ditemukan hanya tersebar dukungan untuk globalisasi di sistem operasi, browser, mengandung bisa dan back-end sistem. Namun, kami jarang diamati konektivitas otomatis apa pun di aplikasi ini. Untungnya, kami lakukan memahami konsep rangkaian karakter, kode halaman, browser bahasa dan fon yang kita dapat memanfaatkan untuk pengembangan aplikasi untuk pengguna global.

Ini akan menjadi terlalu sulit untuk memisahkan ke dalam kategori semua globalisasi masalah kita ASP.net harus dilihat. Sebaliknya, saya akan mendaftar serangkaian konsep yang berkaitan dengan berbagai masalah tersebut.

Rangkaian karakter dan codepages

Kita semua tahu bahwa karakter pada layar komputer kami hanya serangkaian byte. Seri byte dapat dibuat dan diinterpretasikan dalam berbagai cara. Jika interpretasi menggunakan pengkodean yang berbeda dengan pengkodean byte array dibuat dengan, interpretasi akan ditampilkan sebagai sampah. Rangkaian karakter (charsets) adalah pengkodean format yang biasanya digunakan oleh penjelajah. Properti Codepage , yang lebih sesuai untuk konversi sisi server, ini hanya tabel konversi yang menentukan bagaimana karakter dikodekan.

Penjelajah mengkode data post formulir berdasarkan set karakter saat ini. Jika set karakter saat ini "windows-1256," maka transmisi byte ke server juga disandikan sebagai "windows-1256."

Ketika ASP diinterpretasikan, bentuk dan Querystring koleksi tidak dibuat sampai mereka dirujuk dalam kode. Ketika mereka sedang dibangun, string data berubah untuk Unicode berdasarkan codepage saat ini. (Secara asali, ASP dan ASP.NET memproses konten dengan menggunakan Unicode format). Sangat penting Anda menetapkan codepage benar sebelum referensi koleksi; Jika tidak, representasi Unicode di memori tidak akan benar.

Untuk menetapkan codepage, gunakan Session.Codepage atau Response.Codepage. Response.Codepage ini hanya tersedia dalam versi Microsoft Layanan informasi Internet (IIS) 5.1 atau yang lebih baru. Untuk informasi tentang nilai bilangan bulat (yang terkait dengan rangkaian karakter) kami akan menyetel properti untuk, kunjungi situs Web Microsoft berikut ini:Misalnya, untuk menetapkan codepage untuk bahasa Arab, gunakan kode berikut ini:
Session.Codepage = 1256
Response.Codepage hanya akan mempengaruhi respons saat ini. Namun, Session.Codepage akan mempengaruhi semua respons yang dibuat oleh pengguna saat ini. Ketika codepage diatur dengan menggunakan salah satu dari properti dan koleksi bentuk dan Querystring dibuat, perubahan ini dalam codepage terbaru menyebabkan metode Response.Write untuk mengubah Unicode di memori untuk codepage saat ini. Untuk informasi selengkapnya tentang topik ini, kunjungi website MSDN berikut:
Pengaturan halaman kode untuk String konversi (ASP)http://msdn2.microsoft.com/en-us/library/ms525789.aspx
Garis bawah ketika masalah yang berkaitan dengan charsets dan codepages adalah bahwa charset klien dan server codepage harus cocok.

Menerima bahasa

Jika pengembang ASP yang ingin tahu bahasa pengguna telah ditetapkan di browser-nya, pengembang dapat menggunakan variabel Request.ServerVariables ("HTTP_ACCEPT_LANGUAGE") untuk menemukan daftar bahasa yang pengguna ingin membaca respons, (seperti bahasa Inggris, Jerman, atau India) dan urutan pilihan yang pengguna ingin melihat bahasa ini. ASP.net, informasi yang sama dengan ada di properti Request.UserLanguages sebagai array.
Untuk informasi selengkapnya tentang cara menggunakan informasi ini di kode ASP, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:
229690 cara menetapkan ID lokal ASP per pengaturan bahasa browser

Menampilkan karakter bita multi set di Internet Explorer

Satu-satunya format penyandian yang dapat menunjukkan rangkaian karakter bita multi adalah Unicode (UTF-8). Dengan UTF-8, kami dapat menampilkan Cyrillic, India, Jepang, dan semua pada halaman yang sama. Jika kita tidak menggunakan UTF-8, kita dapat menunjukkan salah satu bahasa ini hanya pada waktu. Untuk menetapkan charset browser, gunakan Response.CharSet properti.

Karakter byte multi statis di Halaman

Untuk menampilkan karakter byte multi disimpan secara langsung di halaman, kita harus terlebih dahulu menyimpan halaman dengan pengkodean khusus. UTF-8 akan terbaik, tetapi codepage tertentu (cocok untuk codepage karakter) akan bekerja dengan baik.

Menyimpan berkas ASP menggunakan Microsoft Visual InterDev tidak membantu di sini, karena Visual InterDev hanya dapat menyimpan dalam bahasa Inggris ANSI maupun Unicode. Setiap halaman ASP yang disimpan sebagai Unicode tidak didukung oleh ASP.

Pada Microsoft Visual Studio .NET, Anda dapat menyimpan file dalam pengkodean apa pun. Ada dua cara untuk melakukannya. Nilai asali cara adalah untuk menyimpan berkas menggunakan codepage aktif bagi pengguna. Cara tambahan untuk menyimpan berkas dengan pengkodean adalah sebagai berikut:
Pada File menu, klik Simpan berkas sebagai. Dalam
Simpan berkas sebagai kotak dialog, klik kotak turun-bawah panah pada
Tombol Simpan . Ketika Anda mengklik panah, pilihan yang
Simpan dan menyimpan dengan pengkodean. Ketika Anda mengklik
Menyimpan dengan pengkodean, kotak dialog Opsi lanjut menyimpan muncul di mana Anda dapat memilih jenis pengkodean yang ingin Anda Terapkan dari daftar codepages yang diinstal di komputer.


Catatan Perubahan ini pengkodean untuk menyimpan operasi, tetapi adalah untuk sekali saja. Berikutnya Simpan akan menetapkan kembali ke asali.

Untuk mengubah default codepage, klik Opsi lanjut Simpan
Menu berkas . Di kotak dialog Simpan opsi lanjut , Anda dapat menetapkan penyandian asali untuk menyimpan operasi untuk codepage pilihan Anda.

Metode ini berkaitan dengan cara berkas disimpan pada disk. Namun, untuk mengontrol output untuk ASP, seperti yang telah dibahas, kita perlu menetapkan Session.CodePage dan properti Response.CharSet . Dengan IIS 5.1 atau versi yang lebih baru, kita juga dapat menggunakan properti Response.CodePage .

Default CODEPAGE di server

Lokal asali dan codepage default untuk halaman tergantung pada pengaturan registri. Pengguna DEFAULT. Kita dapat menemukan kunci internasional pada kumpulan registri HKEY_USERS\. DEFAULT\Control Panel\International. Kami juga dapat mengubah perilaku lokal yang dipilih oleh IIS. Untuk informasi selengkapnya, lihat bagian "IIS 5.0" dalam artikel Basis Pengetahuan berikut:
306044 perilaku tanggal/waktu format berbeda ketika diakses dari Active Server Pages

Jika login pengguna lokal sama yang ditetapkan sebagai default sistem atau tombol di atas, pengaturan pengguna akan lebih diutamakan.

Contoh: Default lokal memiliki tanggal format ditetapkan sebagai 11.1.2004, saat pengguna yang log on (dengan set lokal yang sama) memiliki format tanggal 11/1/2004. Pengaturan 11/1/2004 akan berlaku untuk ASP.

(Untuk ASP.NET, ini dapat berbeda-beda. Dalam beberapa instalasi, ASPNET pengguna akan memiliki sendiri profil yang akan muncul di bawah HKEY_USERS ketika penuh. Lain, akan digunakan. Profil ASALI. Kami juga dapat menggunakan atribut codepage dalam deklarasi < % @ % >. Ini harus digunakan ketika berkas disimpan dengan berbeda pengkodean kemudian default, seperti codepage 932 (Jepang)).

Masalah codepage versus masalah konversi fon: yang mana?

Kadang-kadang, Anda mungkin melihat karakter tanda tanya (?) atau kotak di mana karakter yang seharusnya muncul.
Masalah konversi codepage
Saat sebuah karakter diganti dengan karakter tanda tanya (?), ini adalah indikasi masalah konversi codepage, telah terjadi. Tanda tanya (?) adalah karakter asali untuk konversi codepage dan pada dasarnya berarti bahwa sistem operasi tidak tahu cara menangani karakter nilai dan mengubahnya. Mengganti nilai karakter dengan tanda tanya (?). Ini berarti bahwa karakter yang memiliki nilai yang tidak valid untuk codepage atau bahwa codepage yang diperlukan untuk pengubahan tidak diinstal.
Masalah konversi font
Saat sebuah karakter diganti oleh kotak, ini adalah indikasi masalah konversi font yang telah terjadi. Hal ini terjadi pada sisi klien ketika klien tidak memiliki font yang benar yang diinstal untuk menampilkan karakter ini dengan benar. Misalnya, saat sebuah karakter dari charset Jepang, dan klien tidak memiliki font Jepang yang diinstal, karakter Jepang ditampilkan sebagai kotak.

Selanjutnya, akan berbicara tentang bagaimana hal-hal yang diubah dalam ASP.NET 1.x, dan bagaimana perubahan tersebut mempengaruhi globalisasi masalah dalam konteks ASP.NET.

Globalisasi masalah ASP.net 1.x:

Dengan ASP.NET, diperkenalkan tiga hal besar:
  • Tag < globalisasi > di web.config file
    Tag < globalisasi > mengambil kami dari konsep membingungkan codepages dan charsets dan memungkinkan kami kontrol sebagian besar varian dalam ASP.NET.
  • System.Globalization namespace
    Globalisasi namespace memberikan kekuatan programatik penanganan globalisasi.
  • Konsep file sumber daya telah meningkat.
    Kami tidak berhubungan dengan file sumber daya dengan cara yang biasa kami di ASP. Sekarang, berkas sumber daya yang dalam bentuk file XML ketika kita merancang dan mengembangkan mereka, dan ada sebagai merakit saat runtime.
Globalisasi konfigurasi tag:

Dua pengaturan penting dalam tag adalah sebagai berikut:
<globalization             requestEncoding="utf-8" 
responseEncoding="utf-8" />
Lainnya mungkin pengaturan wilayah berikut:
fileEncodingMenentukan penyandian .aspx, .asmx dan .asax file parsing asali. Unicode dan UTF-8 file yang disimpan dengan urutan byte tanda awalan (dengan tanda tangan) akan secara otomatis dikenali, terlepas dari nilai fileEncoding.
KulturMenentukan budaya default untuk memproses permintaan Web masuk (berlaku pada metode kelas dari System.Globalization namespace).
uiCultureMenentukan budaya default untuk memproses pencarian lokal tergantung pada sumber daya (satelit rakitan).
Untuk informasi lebih lanjut tentang untai budaya (nilai budaya dan uiculture), kunjungi situs Web Microsoft berikut ini:Pengaturan ini diterapkan dengan ASP.NET setelah respons selesai, dan sebelum permintaan adalah menyerahkan ke aplikasi Anda. Untuk responseEncoding, buffer yang dibuat untuk menyimpan hasil diatur ke pengkodean ini. Semua yang masuk ke buffer ini akan dikodekan sesuai dengan pengaturan seperti yang dimasukkan ke buffer.

Untuk requestEncoding, runtime akan membaca permintaan dan menafsirkan sesuai dengan pengaturan di bagian ini. Ini adalah pengaturan yang dapat menyebabkan masalah, namun. Tabel di bawah ini menunjukkan tata letak bit UTF-8 byte urutan yang benar.

Jika nilai karakter jatuh ASCII 7 bit standar, nilai byte tidak dimodifikasi. Jika nilai di atas 127, harus mengikuti aturan di bawah ini. Set Awalan bit menunjukkan berapa banyak karakter dalam urutan. Setiap byte setelah pertama harus mulai dengan bit pertama disetel ke 1.

Tata letak byte UTF-8:
ByteBitsrepresentasi
170vvvvvvv
211110vvvvv 10vvvvvv
3161110vvvv 10vvvvvv 10vvvvvv
42111110vvv 10vvvvvv 10vvvvvv 10vvvvvv
Ini adalah mana masalah berasal. Jika penjelajah menyandikan permintaan berdasarkan satu byte encoding (seperti iso-8859-1), nilai di atas 127 tidak akan berlaku menurut tata letak di atas. Ketika mereka membaca ke buffer UTF-8, karakter tidak valid hanya turun dari output.

Perubahan pengkodean Runtime

Dalam Application_BeginRequest , kita dapat mengubah nilai requestEncoding dan memiliki diberlakukan sebelum permintaan diproses. Untuk respons, peristiwa Page_PreRender adalah kesempatan terakhir untuk mengubah pengkodean output. Juga perhatikan bahwa Response.Write akan menaruh karakter dalam buffer ini sebagai kami menyebutnya, jadi pastikan untuk memiliki set pengkodean tepat sebelum menggunakan Response.Write.

Data asli adalah non-Unicode: cara masih membuat Internet Explorer menafsirkan multi byte charsets?

Kami juga dapat membuat ASP.NET bertindak seperti ASP jika kita perlu. Untuk melakukan hal ini terjadi, kita perlu menetapkan responseEncoding dan requestEncoding untuk windows-1252 (lebih lengkap pengkodean dari iso-8859-1), dan menggunakan properti Response.Charset untuk menampilkan teks dengan benar. Ini bekerja karena windows-1252 skema pengkodean tunggal byte, dan tidak mengubah byte yang ditambahkan ke buffer. Dengan demikian, karakter double-byte dikirim sebagai serangkaian byte tunggal. Kami kemudian dapat memberitahu Internet Explorer cara menginterpretasi byte menggunakan properti Response.Charset . Skenario ini mungkin diperlukan jika data asli tidak disimpan sebagai Unicode atau UTF-8, seperti nilai kembali dari objek COM, atau data yang disimpan di Microsoft SQL Server di bidang non N (seperti varchar).

Masalah globalisasi SQL Server dan ASP.NET

Unicode input data ke SQL Server
Cara terbaik untuk menyimpan data di SQL Server adalah untuk memanfaatkan Unicode. Setiap kali menggunakan SISIPAN, PEMUTAKHIRAN, dll, jika ada kesempatan setidaknya Unicode data, kita harus menambahkan N sebelum nilai. Ini memberitahu database bahwa nilai Unicode. Contoh yang baik ini adalah objek ADO. Mereka melakukannya secara otomatis jika kita menggunakan objek Recordset untuk menambahkan catatan baru.

Berikut ini adalah contoh:
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)"

Tanggal/waktu input ke SQL Server
Biasanya, kami memiliki pengetahuan tentang budaya dan lokal tanggal/waktu diinterpretasikan dalam aplikasi ASP.NET kami. Namun, saat menekan dan menarik data tanggal waktu ke dan dari sumber eksternal, kita berisiko salah mengartikan format tanggal waktu. Hal ini karena kami tidak dapat menjamin budaya dan lokal sumber eksternal sama seperti aplikasi kami. Di SQL Server ini dapat diselesaikan dengan menggunakan ' saat ini bahasa' atribut di connectionstring sambungan yang dibuat untuk pangkalan data SQL. Kami dapat menyediakan pengaturan bahasa yang sama di connectionstring sebagai budaya di aplikasi kami. Hal ini akan melindungi kami dari risiko kesalahpahaman, karena SQL Server selalu menerima dan mengirim data tanggal waktu dalam persetujuan dengan pengaturan yang disebutkan di atas.

System.Globalization namespace

Ruang nama ini adalah inti globalisasi dan lokalisasi di .NET Framework. Kelas utama yang digunakan dalam namespace ini adalah kelas CultureInfo . Menyimpan informasi budaya tertentu, seperti format tanggal waktu, format nomor, perbandingan informasi, dan informasi teks. Untuk informasi selengkapnya tentang CultureInfo kelas, kunjungi website MSDN berikut:

Netral budaya vs. budaya tertentu

Budaya netral adalah budaya yang berhubungan dengan bahasa, tetapi tidak spesifik negara atau wilayah. Budaya tertentu berkaitan dengan bahasa dan negara tertentu.

Contoh: "DE" (netral budaya) untuk bahasa Jerman, tetapi "de-AT" (khusus budaya) untuk bahasa Jerman seperti yang disebutkan di Austria. Budaya netral tidak dapat digunakan untuk memformat.

Saat ini thread dan budaya kesadaran kelas .NET Framework

Semua metode di Perpustakaan .NET Framework yang mana kami harapkan output agar tergantung pada budaya dan kelas memiliki dua perilaku internal:
  • Mereka memberi kami menetapkan kode budaya saat mensuplai argumen sehingga output didasarkan pada budaya yang ditentukan. Ini opsional.
  • Jika ini adalah kehilangan (biasanya lebih), kelas cerdas tetap memeriksa properti Thread.CurrentThread.CurrentCulture dan berfungsi sesuai yang.
Kami dapat mengubah nilai properti ini dengan kode yang mirip dengan berikut ini:
    Dim ci As CultureInfo        ci = New CultureInfo("de-AT")
Thread.CurrentThread.CurrentCulture = ci
Dalam contoh kode ini, "de" mewakili bahasa Jerman, dan "Pada" mewakili Austria. Jadi, dalam contoh ini, DateTime.Now(). ToString metode akan kembali tanggal dan waktu dalam format yang sesuai dengan cara tanggal dan waktu dinyatakan dalam bahasa Jerman di Austria.

Kerangka kerja (seperti berikut) memastikan bahwa properti CurrentCulture selalu dijalankan:
  1. Apa itu akan ditetapkan ke secara programatik.
  2. Dalam hal ini tidak secara eksplisit diatur oleh programmer, properti mengambil dari berkas konfigurasi (< globalisasi > tag).
  3. Jika properti tidak ada, maka ada budaya yang menjalankan Web server. Hal ini biasanya budaya netral yang berkaitan dengan bahasa sistem operasi.

File sumber daya

Semua .resx, .resource file, dan berkas yang memiliki atribut Membangun tindakan yang ditetapkan ke Sumber daya tertanam yang ditambahkan ke ASP.NET proyek di Visual Studio .NET disusun secara otomatis dan tertanam dalam aplikasi rakitan sebagai bagian dari yang nyata. Ini bahkan dapat dilakukan secara manual dengan menggunakan utilitas Resource File Generator (RESGEN) melalui prompt perintah Visual Studio .NET. Untuk informasi selengkapnya, kunjungi website MSDN berikut:Ini adalah konsep umum yang dapat diterapkan setiap kali kita perlu untuk mengelola sumber daya aplikasi yang tidak terkait globalisasi. Namun, saat kami menerapkan globalisasi, kita harus menggunakan satelit rakitan.

Satelit rakitan

Rakitan satelit dapat digunakan dalam proyek ASP.NET ketika Anda memastikan bahwa berikut ini benar:
  1. Semua elemen antarmuka pengguna di semua file aspx perlu dilengkapi dengan id dan runat = atribut server.
  2. Kami menciptakan berkas .resx terpisah. Masing-masing harus sesuai dengan setiap budaya kami ingin aplikasi kita untuk dukungan.
  3. Kita harus menentukan nama depan yang umum untuk berkas-berkas untuk keluaran 'String'.
  4. Nama file terpisah .resx dengan konvensi penamaan berikut commonfirstname languagecode-regioncode.resx (misalnya: Strings.de-AT.resx, Strings.en-GB.resx).
  5. Kami akan memiliki file sumber daya
    commonfirstname.resx (Strings.resx) yang memiliki semua string sebagai kami akan ditampilkan dalam kasus default.
  6. Menulis kode untuk mendeteksi pengguna budaya dan mengatur properti Thread.CurrentThread.CurrentUICulture untuk mencocokkan dengan itu.
  7. Menulis kode untuk memuat sumber daya yang menggunakan kelas ResourceManager .
  8. Menulis kode untuk mengekstrak string dari objek dimuat, dan menetapkan mereka untuk elemen antarmuka pengguna.
Apabila Anda telah melakukan langkah-langkah ini, Visual Studio.NET akan kompilasi Strings.resx dan embed ke perkumpulan aplikasi (MyGlobalizationTestProjectName.dll). Namun, untuk semua file .resx lainnya, maka akan menghasilkan berkas dll yang terpisah yang tidak memiliki kode dapat dieksekusi, tetapi hanya sumber data. Ini benar-benar disebut satelit rakitan. Selain itu, Visual Studio .NET tempat ini dalam struktur map serupa dengan berikut ini:
MyGlobalizationTestProjectName        |------- bin
|------en-US
MyGlobalizationTestProjectName.resources.dll
|------ja-JP
MyGlobalizationTestProjectName.resources.dll
|------de-AT
MyGlobalizationTestProjectName.resources.dll

Perbedaan antara CurrentCulture dan CurrentUICulture

Sementara metode kelas System.Globalization namespace tergantung pada properti Thread.CurrentThread.CurrentCulture memberikan output mereka, kelas ResourceManager yang memuat rakitan sumber daya tergantung pada properti Thread.CurrentThread.CurrentUICulture untuk memuat rakitan satelit sesuai. Berikut ini adalah contoh dari C# kode:
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");
}

}

Urutan di mana ASP.NET memilih satelit rakitan:

Apabila Anda telah mengatur thread CurrentUICulture, ASP.NET secara otomatis memilih sumber yang sesuai, dengan urutan berikut ini:
  • Jika rakitan satelit ditemukan dengan budaya cocok, sumber daya dari rakitan yang digunakan.
  • Jika rakitan satelit ditemukan dengan budaya netral yang cocok dengan CurrentUICulture, sumber daya dari rakitan yang digunakan.
  • Jika tidak ditemukan untuk CurrentUICulture, sumber daya pengembalian yang disimpan dalam rakitan yang dapat dijalankan yang digunakan.
Catatan Hal ini didasarkan pada proses mundur sumber daya lebih umum. Untuk informasi selengkapnya, kunjungi website MSDN berikut:

Secara manual membuat satelit rakitan:

Penggunaan satelit rakitan yang mana Visual Studio .NET menciptakan rakitan itu sendiri. Visual Studio .NET tidak nama kuat satelit rakitan secara default, namun. Jika Anda ingin mengubah opsi ini, Anda akan perlu membuat satelit rakitan secara manual. Untuk informasi selengkapnya, kunjungi website MSDN berikut:.

Apa yang dimaksud dengan ASP.NET 2.0 di depan globalisasi?

Penggunaan luas ASP.NET dan jenis masalah yang kita akan melihat terkait dengan fitur globalisasi ASP.NET 2.0 yang masih jauh ke depan. Namun, akan lebih baik untuk melihat apa arah globalisasi metodologi menuju untuk aplikasi web singkat.

Dukungan globalisasi ASP.NET 2.0 telah mengalami perubahan karakter dan pengembang Web telah memberikan kemampuan untuk membuat lokalisasi aplikasi Web semudah untuk aplikasi berbasis Windows. Berikut ini adalah daftar fitur yang foundation globalisasi metodologi dalam ASP.NET 2.0:

Sangat diketik sumber daya Inti .NET Framework 2.0 rilis dukungan untuk mengetik sangat sumber yang menyediakan pengembang Intellisense dan menyederhanakan kode yang diperlukan untuk mengakses sumber daya runtime.

Editor sumber daya yang dikelola Visual Studio .NET 2.0 mencakup editor sumber daya yang baru dengan dukungan yang lebih baik untuk menciptakan dan mengelola sumber daya entri termasuk string, Gambar, file eksternal, dan jenis kompleks.

Generasi sumber daya Web formulir Pengembang Windows Forms telah menikmati manfaat internasionalisasi otomatis. Visual Studio .NET 2005 sekarang akan mendukung internasionalisasi cepat secara otomatis membuat sumber daya Web formulir, kontrol pengguna dan halaman master.

Peningkatan dukungan runtime Contoh ResourceManager dikelola oleh runtime dan dapat diakses untuk kode server melalui antarmuka pemrograman lebih dapat diakses.

Lokalisasi ekspresi Modern deklaratif ekspresi untuk halaman Web dukungan pemetaan sumber daya entri untuk mengontrol properti, properti HTML atau wilayah konten statis. Ekspresi ini juga dapat diperluas, menyediakan tambahan cara untuk mengontrol proses melampirkan lokal konten HTML output.

Pilihan budaya otomatis Mengelola budaya pilihan untuk setiap permintaan Web dapat secara otomatis ditautkan ke preferensi browser.

Model penyedia sumber daya Model penyedia sumber daya baru memungkinkan pengembang untuk host sumber daya di sumber data lainnya seperti berkas datar dan tabel database, sementara model pemrograman untuk mengakses sumber daya tersebut tetap konsisten.

Untuk informasi selengkapnya tentang globalisasi metodologi dalam ASP.NET 2.0, kunjungi website MSDN berikut:
ASP.NET 2.0 lokalisasi fitur: Pendekatan baru untuk lokalisasi aplikasi Web
http://msdn2.microsoft.com/en-us/library/ms379546(VS.80).aspx

Kesimpulan

Itulah yang sekarang tentang isu-isu globalisasi ASP dan ASP.NET. Saya berharap artikel ini akan membantu beberapa pelanggan memecahkan masalah globalisasi mereka di ASP dan ASP.NET sebelum mereka memilih untuk menghubungi Microsoft Support. Saya akan berakhir dengan pikir berikut ini:

"Mana pun dan setiap kali Anda mengembangkan, pikirkan tentang juta orang dapat memberdayakan di seluruh dunia. Membuat solusi Anda siap untuk dunia! Alat Microsoft dan teknologi memudahkan internasionalisasi."

Kami akan menangkap cadangan lagi berikutnya bulan dengan topik menarik lainnya.

Terima kasih atas waktu Anda.
Untuk informasi lebih lanjut tentang isu-isu globalisasi ASP dan ASP.NET, lihat situs Web Microsoft berikut:
Buka Global: Lokalisasi aplikasi Web dinamis dengan IIS 5.0 dan SQL Server
http://msdn.microsoft.com/msdnmag/issues/01/05/global/default.aspx
Buka Global: Merancang situs Web berbasis ASP untuk mendukung globalisasi
http://msdn.microsoft.com/msdnmag/issues/0700/localize/default.aspx
315616 cara mendeteksi bahasa klien di Server aktif halaman halaman di IIS
http://support.microsoft.com/?id=315616
Sumber daya dan lokalisasi menggunakan .NET Framework SDK
http://msdn2.microsoft.com/en-us/library/aa309421(VS.71).aspx
Elemen konfigurasi ASP.NET < globalisasi >
http://msdn2.microsoft.com/en-us/library/hy4kkhe0(vs.71).aspx
Desain dan implementasi pedoman untuk klien Web - globalisasi dan lokalisasi
http://msdn2.microsoft.com/en-us/library/ms978628.aspx
Situs Microsoft resmi-pengembangan Global dan komputasi Portal
http://msdn.microsoft.com/en-us/goglobal/bb688096
Toolkit lokalisasi perusahaan - untuk mengembangkan aplikasi lokal Microsoft ASP.NET
http://msdn2.microsoft.com/en-us/library/aa479334.aspx
839861 System.Resources.MissingManifestResourceException pengecualian terjadi saat Anda mencoba untuk mengakses sumber daya lokal

Daftar istilah

ANSI Singkatan dari American National Standards Institute. Dalam konteks ini, ini menunjukkan codepage khusus untuk menetapkan bahasa/karakter khusus. Paling sering mengacu pada codepage bahasa Inggris (windows-1252).

ASCII Skema pengkodean 1 byte (atau 7 bit). Hanya karakter dalam kisaran 0-127 standar. Kisaran 128-255 adalah ekstensi ASCII dan bukan bagian dari standar. Contohnya adalah perbedaan antara berbagai atas OEM ASCII bagan dan grafik VB ASCII.

CharSet Pengaturan digunakan terutama untuk Internet Explorer dan browser yang memberitahukan browser cara menginterpretasi data karakter. Contoh: Response.charSet = "iso-8859-1."

Codepage Tabel konversi yang menentukan bagaimana karakter disandikan (biasanya digunakan untuk server).

Globalisasi Globalisasi adalah proses merancang dan membuat aplikasi sehingga persyaratan unik budaya, wilayah, atau kebutuhan nasional dan linguistik dapat dipenuhi. Dengan kata lain merancang aplikasi dengan cara bahwa hal itu dapat dilokalisasi kemudian adalah globalisasi.

Lokal budaya Bahasa dan wilayah format/preferensi khusus termasuk, tanggal dan format kalender, format waktu, mata uang format, casing, penyortiran dan perbandingan untai, format alamat, telepon format nomor, ukuran kertas, satuan ukuran, penulisan arah, dll.

LocaleID (LCID) Nilai DWORD yang menentukan pengenal bahasa dan pengurutan ID. Ini dapat digunakan untuk menentukan format wilayah tertentu untuk ex tanggal waktu dll harus diformat sesuai.

Localizability Kemampuan aplikasi untuk menyajikan konten untuk bahasa/lokal yang diminta.

Lokalisasi Lokalisasi adalah proses menerjemahkan antarmuka pengguna ke bahasa khusus dan/atau lokal.

Rangkaian karakter multibyte Karakter yang ditetapkan di mana karakter terdiri dari dua atau lebih byte, seperti Jepang. UTF-8 juga berada di bawah kategori ini. (Unicode teknis berada dalam kategori ini, tetapi di Windows, memiliki kategori sendiri.)

Unicode Skema pengkodean 2-byte. Windows menggunakan Unicode internal. Api apa pun khusus untuk Unicode menandakan oleh "W" di akhir nama fungsi. Juga dikenal sebagai lebar char; tidak dapat langsung digunakan dari aplikasi web.

UTF-8 Pengkodean karakter mana karakter yang dapat diwakili oleh 1-6 byte. Di Windows, kisaran adalah 1-3 byte. Tidak didukung di bawah NT4 untuk aplikasi web.
Untuk informasi selengkapnya, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:
175392 UTF8 dukungan


Rangkaian karakter yang luas Alias untuk Unicode. Juga dikenal sebagai DBCS (set karakter byte ganda), UCS-2, UTF-16.
Seperti biasa, ditujukan merasa bebas untuk mengirim ide pada topik yang Anda inginkan di masa mendatang kolom atau di Pangkalan Pengetahuan menggunakan
Bentuk Meminta untuk itu .