StronglyTypedResourceBuilder Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyediakan dukungan untuk sumber daya yang sangat ditik. Kelas ini tidak dapat diwariskan.
public ref class StronglyTypedResourceBuilder abstract sealed
public static class StronglyTypedResourceBuilder
type StronglyTypedResourceBuilder = class
Public Class StronglyTypedResourceBuilder
- Warisan
-
StronglyTypedResourceBuilder
Contoh
Contoh berikut menghasilkan kelas bernama DemoResources yang ditulis dalam C# atau Visual Basic (tergantung pada kode sumber contoh). Kelas ini berada di DemoApp namespace layanan dan memiliki properti yang mengembalikan bitmap logo dan nama aplikasi. Contoh memanggil CreateResourceFile metode untuk membuat file .resw yang diperlukan dan mengharuskan file bitmap bernama Logo.bmp ditemukan di direktori contoh saat ini. Contoh kode menggunakan file sumber daya berikut, bernama demo.resx:
using Microsoft.CSharp;
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using System.Drawing;
using System.IO;
using System.Resources;
using System.Resources.Tools;
public class Example
{
public static void Main()
{
CreateResXFile();
StreamWriter sw = new StreamWriter(@".\DemoResources.cs");
string[] errors = null;
CSharpCodeProvider provider = new CSharpCodeProvider();
CodeCompileUnit code = StronglyTypedResourceBuilder.Create("Demo.resx", "DemoResources",
"DemoApp", provider,
false, out errors);
if (errors.Length > 0)
foreach (var error in errors)
Console.WriteLine(error);
provider.GenerateCodeFromCompileUnit(code, sw, new CodeGeneratorOptions());
sw.Close();
}
private static void CreateResXFile()
{
Bitmap logo = new Bitmap(@".\Logo.bmp");
ResXResourceWriter rw = new ResXResourceWriter(@".\Demo.resx");
rw.AddResource("Logo", logo);
rw.AddResource("AppTitle", "Demo Application");
rw.Generate();
rw.Close();
}
}
Imports System.CodeDom
Imports System.CodeDom.Compiler
Imports System.Drawing
Imports System.IO
Imports System.Resources
Imports System.Resources.Tools
Module Example
Public Sub Main()
CreateResXFile()
Dim sw As New StreamWriter(".\DemoResources.vb")
Dim errors() As String = Nothing
Dim provider As New VBCodeProvider()
Dim code As CodeCompileUnit = StronglyTypedResourceBuilder.Create("Demo.resx", "DemoResources",
"DemoApp", provider,
false, errors)
If errors.Length > 0 Then
For Each [error] In errors
Console.WriteLine([error])
Next
End If
provider.GenerateCodeFromCompileUnit(code, sw, New CodeGeneratorOptions())
sw.Close()
End Sub
Private Sub CreateResXFile()
Dim logo As New Bitmap(".\Logo.bmp")
Dim rw As New ResXResourceWriter(".\Demo.resx")
rw.AddResource("Logo", logo)
rw.AddResource("AppTitle", "Demo Application")
rw.Generate()
rw.Close()
End Sub
End Module
Kode aplikasi Anda kemudian dapat menggunakan kelas sebagai berikut:
this.Text = DemoApp.DemoResources.AppTitle;
System.Drawing.Bitmap bmp = DemoApp.DemoResources.Logo;
Me.Text = DemoApp.DemoResources.AppTitle
Dim bmp As System.Drawing.Bitmap = DemoApp.DemoResources.Logo
Keterangan
Biasanya, sumber daya memisahkan kode dari konten dalam aplikasi. Membuat dan mengkonsumsi sumber daya ini memudahkan untuk mengembangkan aplikasi yang dapat dilokalkan. Dalam .NET Framework, sumber daya biasanya digunakan dengan menggunakan kelas ResourceManager, yang berisi metode yang menyediakan akses ke sumber daya khusus budaya pada waktu proses. Untuk informasi selengkapnya tentang membuat dan menggunakan sumber daya, lihat Sumber Daya di Aplikasi Desktop.
Dukungan sumber daya yang sangat di ketik adalah fitur waktu kompilasi yang merangkum akses ke sumber daya dengan membuat kelas yang berisi sekumpulan properti statis baca-saja (get). Ini menyediakan cara alternatif untuk menggunakan sumber daya alih-alih memanggil ResourceManager.GetString metode dan ResourceManager.GetObject .
Fungsionalitas dasar untuk dukungan sumber daya yang sangat di ketik disediakan oleh StronglyTypedResourceBuilder kelas (serta /str opsi baris perintah di Resgen.exe (Resource File Generator)). Output Create metode adalah kelas yang berisi properti yang sangat diketik yang cocok dengan sumber daya yang dirujuk dalam parameter input. Kelas ini menyediakan akses baca-saja ke sumber daya yang tersedia dalam file yang diproses.
Metode
| Nama | Deskripsi |
|---|---|
| Create(IDictionary, String, String, CodeDomProvider, Boolean, String[]) |
Menghasilkan file kelas yang berisi properti yang diketik dengan kuat yang cocok dengan sumber daya yang dirujuk dalam koleksi yang ditentukan. |
| Create(IDictionary, String, String, String, CodeDomProvider, Boolean, String[]) |
Menghasilkan file kelas yang berisi properti yang diketik dengan kuat yang cocok dengan sumber daya yang dirujuk dalam koleksi yang ditentukan. |
| Create(String, String, String, CodeDomProvider, Boolean, String[]) |
Menghasilkan file kelas yang berisi properti yang diketik dengan kuat yang cocok dengan sumber daya dalam file .resx yang ditentukan. |
| Create(String, String, String, String, CodeDomProvider, Boolean, String[]) |
Menghasilkan file kelas yang berisi properti yang diketik dengan kuat yang cocok dengan sumber daya dalam file .resx yang ditentukan. |
| VerifyResourceName(String, CodeDomProvider) |
Menghasilkan string sumber daya yang valid berdasarkan string input dan penyedia kode yang ditentukan. |