ResXResourceWriter Klas

Definitie

Hiermee schrijft u resources in een XML-resourcebestand (.resx) of een uitvoerstroom.

public ref class ResXResourceWriter : System::Resources::IResourceWriter
public class ResXResourceWriter : System.Resources.IResourceWriter
type ResXResourceWriter = class
    interface IResourceWriter
    interface IDisposable
Public Class ResXResourceWriter
Implements IResourceWriter
Overname
ResXResourceWriter
Implementeringen

Voorbeelden

In het volgende voorbeeld wordt een RESX-bestand gemaakt met de naam CarResources.resx zes tekenreeksen, een pictogram en twee toepassingsgedefinieerde objecten (twee Automobile objecten). Houd er rekening mee dat de Automobile klasse, die is gedefinieerd en geïnstantieerd in het voorbeeld, is gelabeld met het SerializableAttribute kenmerk.

using System;
using System.Drawing;
using System.Resources;

[Serializable()] public class Automobile
{
   private string carMake;
   private string carModel;
   private int carYear;
   private int carDoors;
   private int carCylinders;

   public Automobile(string make, string model, int year) :
                     this(make, model, year, 0, 0)
   { }

   public Automobile(string make, string model, int year,
                     int doors, int cylinders)
   {
      this.carMake = make;
      this.carModel = model;
      this.carYear = year;
      this.carDoors = doors;
      this.carCylinders = cylinders;
   }

   public string Make {
      get { return this.carMake; }
   }

   public string Model {
      get {return this.carModel; }
   }

   public int Year {
      get { return this.carYear; }
   }

   public int Doors {
      get { return this.carDoors; }
   }

   public int Cylinders {
      get { return this.carCylinders; }
   }
}

public class Example
{
   public static void Main()
   {
      // Instantiate an Automobile object.
      Automobile car1 = new Automobile("Ford", "Model N", 1906, 0, 4);
      Automobile car2 = new Automobile("Ford", "Model T", 1909, 2, 4);
      // Define a resource file named CarResources.resx.
      using (ResXResourceWriter resx = new ResXResourceWriter(@".\CarResources.resx"))
      {
         resx.AddResource("Title", "Classic American Cars");
         resx.AddResource("HeaderString1", "Make");
         resx.AddResource("HeaderString2", "Model");
         resx.AddResource("HeaderString3", "Year");
         resx.AddResource("HeaderString4", "Doors");
         resx.AddResource("HeaderString5", "Cylinders");
         resx.AddResource("Information", SystemIcons.Information);
         resx.AddResource("EarlyAuto1", car1);
         resx.AddResource("EarlyAuto2", car2);
      }
   }
}
Imports System.Drawing
Imports System.Resources

<Serializable()> Public Class Automobile
   Private carMake As String
   Private carModel As String
   Private carYear As Integer
   Private carDoors AS Integer
   Private carCylinders As Integer
   
   Public Sub New(make As String, model As String, year As Integer) 
      Me.New(make, model, year, 0, 0)   
   End Sub
   
   Public Sub New(make As String, model As String, year As Integer, 
                  doors As Integer, cylinders As Integer)
      Me.carMake = make
      Me.carModel = model
      Me.carYear = year
      Me.carDoors = doors
      Me.carCylinders = cylinders
   End Sub

   Public ReadOnly Property Make As String
      Get
         Return Me.carMake
      End Get   
   End Property       
   
   Public ReadOnly Property Model As String
      Get
         Return Me.carModel
      End Get   
   End Property       
   
   Public ReadOnly Property Year As Integer
      Get
         Return Me.carYear
      End Get   
   End Property       
   
   Public ReadOnly Property Doors As Integer
      Get
         Return Me.carDoors
      End Get   
   End Property       
   
   Public ReadOnly Property Cylinders As Integer
      Get
         Return Me.carCylinders
      End Get   
   End Property       
End Class

Module Example
   Public Sub Main()
      ' Instantiate an Automobile object.
      Dim car1 As New Automobile("Ford", "Model N", 1906, 0, 4)
      Dim car2 As New Automobile("Ford", "Model T", 1909, 2, 4)
      ' Define a resource file named CarResources.resx.
      Using resx As New ResXResourceWriter(".\CarResources.resx")
         resx.AddResource("Title", "Classic American Cars")
         resx.AddResource("HeaderString1", "Make")
         resx.AddResource("HeaderString2", "Model")
         resx.AddResource("HeaderString3", "Year")
         resx.AddResource("HeaderString4", "Doors")
         resx.AddResource("HeaderString5", "Cylinders")
         resx.AddResource("Information", SystemIcons.Information) 
         resx.AddResource("EarlyAuto1", car1)
         resx.AddResource("EarlyAuto2", car2)  
      End Using
   End Sub
End Module

Opmerkingen

De ResXResourceWriter schrijfbronnen in XML-indeling. Als u een binair resourcebestand wilt schrijven, gebruikt u ResourceWriter.

Resources worden opgegeven als naam-/waardeparen met behulp van de AddResource methode. Resourcenamen zijn hoofdlettergevoelig wanneer ze worden gebruikt voor zoekacties; maar om eenvoudiger ontwerphulpprogramma's te ondersteunen en fouten te voorkomen, ResXResourceWriter staat u niet toe dat een.resx-bestand namen heeft die alleen per geval verschillen.

Als u een.resx-bestand wilt maken, maakt u een ResXResourceWriter met een unieke bestandsnaam, roept AddResource u ten minste één keer aan, roept Generate u aan om het resourcesbestand naar de schijf te schrijven en roept Close u vervolgens aan om het bestand te sluiten. Als u het bestand wilt aanroepen, wordt het bestand impliciet Generate aangeroepenClose.

De resources zijn niet noodzakelijkerwijs geschreven in dezelfde volgorde als ze zijn toegevoegd.

Zie Werken met .resx-bestanden programmatisch voor meer informatie over de indeling van een.resx-bestand.

Note

Deze klasse bevat een koppelingsvraag en een overnamevraag op klasseniveau die van toepassing is op alle leden. Een SecurityException wordt geworpen wanneer de directe aanroeper of de afgeleide klasse geen volledig-vertrouwensmachtiging heeft.

Constructors

Name Description
ResXResourceWriter(Stream, Func<Type,String>)

Initialiseert een nieuw exemplaar van de ResXResourceWriter klasse waarmee de resources naar een opgegeven streamobject worden geschreven en stelt een gemachtigde van het conversieprogramma in. Met deze gemachtigde kunnen resourceassembly's worden geschreven die doelversies van het .NET Framework vóór .NET Framework 4 schrijven met behulp van gekwalificeerde assemblynamen.

ResXResourceWriter(Stream)

Initialiseert een nieuw exemplaar van de ResXResourceWriter klasse waarmee de resources naar het opgegeven streamobject worden geschreven.

ResXResourceWriter(String, Func<Type,String>)

Initialiseert een nieuw exemplaar van de klasse ResXResourceWriter die de resources naar een opgegeven bestand schrijft en stelt een gemachtigde in waarmee resourceassembly's kunnen worden geschreven die doelversies van het .NET Framework vóór .NET Framework 4 worden geschreven met behulp van gekwalificeerde assemblynamen.

ResXResourceWriter(String)

Initialiseert een nieuw exemplaar van de ResXResourceWriter klasse waarmee de resources naar het opgegeven bestand worden geschreven.

ResXResourceWriter(TextWriter, Func<Type,String>)

Initialiseert een nieuw exemplaar van de klasse ResXResourceWriter die de resources schrijft naar een opgegeven TextWriter-object en stelt een gemachtigde in waarmee resourceassembly's die doelversies van het .NET Framework vóór .NET Framework 4 kunnen worden geschreven met behulp van gekwalificeerde assemblynamen.

ResXResourceWriter(TextWriter)

Initialiseert een nieuw exemplaar van de ResXResourceWriter klasse die naar het opgegeven TextWriter object schrijft.

Velden

Name Description
BinSerializedObjectMimeType

Hiermee geeft u het standaardinhoudstype voor een binair object. Dit veld is alleen-lezen.

ByteArraySerializedObjectMimeType

Hiermee geeft u het standaardinhoudstype voor een bytematrixobject. Dit veld is alleen-lezen.

DefaultSerializedObjectMimeType

Hiermee geeft u het standaardinhoudstype voor een object op. Dit veld is alleen-lezen.

ResMimeType

Hiermee geeft u het inhoudstype van een XML-resource op. Dit veld is alleen-lezen.

ResourceSchema

Hiermee geeft u het schema op dat moet worden gebruikt bij het schrijven van het XML-bestand. Dit veld is alleen-lezen.

SoapSerializedObjectMimeType

Hiermee geeft u het inhoudstype voor een SOAP-object. Dit veld is alleen-lezen.

Version

Hiermee geeft u de versie van het schema waaraan de XML-uitvoer voldoet. Dit veld is alleen-lezen.

Eigenschappen

Name Description
BasePath

Hiermee wordt het basispad opgehaald of ingesteld voor het relatieve bestandspad dat is opgegeven in een ResXFileRef object.

Methoden

Name Description
AddAlias(String, AssemblyName)

Voegt de opgegeven alias toe aan een lijst met aliassen.

AddMetadata(String, Byte[])

Voegt een ontwerptijdeigenschap toe waarvan de waarde is opgegeven als een bytematrix aan de lijst met resources die moeten worden geschreven.

AddMetadata(String, Object)

Hiermee voegt u een ontwerptijdeigenschap toe waarvan de waarde is opgegeven als een object aan de lijst met resources die moeten worden geschreven.

AddMetadata(String, String)

Hiermee voegt u een ontwerptijdeigenschap toe waarvan de waarde is opgegeven als een tekenreeks aan de lijst met resources die u wilt schrijven.

AddResource(ResXDataNode)

Voegt een benoemde resource toe die is opgegeven in een ResXDataNode object aan de lijst met resources die moeten worden geschreven.

AddResource(String, Byte[])

Voegt een benoemde resource die is opgegeven als een bytematrix toe aan de lijst met resources die moeten worden geschreven.

AddResource(String, Object)

Voegt een benoemde resource toe die is opgegeven als een object aan de lijst met resources die moeten worden geschreven.

AddResource(String, String)

Voegt een tekenreeksresource toe aan de resources.

Close()

Alle resources die worden gebruikt door de ResXResourceWriter.

Dispose()

Alle resources die worden gebruikt door de ResXResourceWriter.

Dispose(Boolean)

Publiceert de niet-beheerde resources die worden gebruikt door de ResXResourceWriter beheerde resources en brengt eventueel de beheerde resources vrij.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
Finalize()

Dit lid overschrijft de Finalize() methode.

Generate()

Hiermee schrijft u alle resources die door de AddResource(String, Byte[]) methode zijn toegevoegd aan het uitvoerbestand of de stroom.

GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Van toepassing op

Zie ook