ResourceReader.GetResourceData(String, String, Byte[]) Metódus

Definíció

Lekéri egy elnevezett erőforrás típusnevét és adatait egy megnyitott erőforrásfájlból vagy streamből.

public:
 void GetResourceData(System::String ^ resourceName, [Runtime::InteropServices::Out] System::String ^ % resourceType, [Runtime::InteropServices::Out] cli::array <System::Byte> ^ % resourceData);
public void GetResourceData(string resourceName, out string resourceType, out byte[] resourceData);
member this.GetResourceData : string * string * Byte[] -> unit
Public Sub GetResourceData (resourceName As String, ByRef resourceType As String, ByRef resourceData As Byte())

Paraméterek

resourceName
String

Egy erőforrás neve.

resourceType
String

Amikor ez a metódus visszatér, egy sztringet tartalmaz, amely a lekért erőforrás típusnevét jelöli. Ez a paraméter nem inicializálva lesz átadva.

resourceData
Byte[]

Ha ez a metódus visszatér, egy bájttömböt tartalmaz, amely a lekért típus bináris ábrázolása. Ez a paraméter nem inicializálva lesz átadva.

Kivételek

resourceName az null.

resourceName nem létezik.

resourceName érvénytelen típussal rendelkezik.

A beolvasott erőforrásadatok sérültek.

Az aktuális ResourceReader objektum nincs inicializálva, valószínűleg azért, mert bezárva van.

Megjegyzések

A GetResourceData metódus egy elnevezett erőforrás értékét bájttömbként kéri le. Általában akkor használatos, ha a Value tulajdonság kivételt jelez, amikor megpróbálja lekérni egy erőforrás értékét.

resourceType egy olyan sztring, amely az erőforrás adattípusát jelöli. A következő értékek bármelyike lehet:

  • Az erőforrás adattípusát jelző számbavételi tag sztring-ábrázolása ResourceTypeCode . ResourceTypeCode egy privát számbavétel, amelyet a .to annak jelzésére használ, hogy a rendszer egy speciális bináris formátumot használ a 19 gyakori adattípus egyikének tárolására. Ezek közé tartoznak a .NET Keretrendszer primitív adattípusai (Boolean, Byte, Char, Decimal, Double, Int16, Int32, Int64, Single, SByte, UInt16, UInt32, UInt64), valamint String, DateTime és TimeSpan, Emellett a ResourceTypeCode számbavétel az alábbi táblázatban látható értékeket is tartalmazza.

    ResourceTypeCode-érték Description
    ResourceTypeCode.ByteArray Az adatok bájttömbök. Ez az adattípus általában a metódus hívásából ResourceWriter.AddResource(String, Byte[]) ered.
    ResourceTypeCode.Null Az adatok null értékűek. Ez az adattípus általában egy olyan objektummal rendelkező metódus meghívásából ResourceWriter.AddResource(String, Object) ered, amelynek értéke .null
    ResourceTypeCode.Stream Az adatok egy streamben lesznek tárolva. Ez az adattípus általában a hívásból ResourceWriter.AddResource(String, Stream) vagy ResourceWriter.AddResource(String, Stream, Boolean) metódusból ered.

    Feltételezve, hogy resourceData nem sérült meg, általában egy bájttömbből vissza lehet konvertálni az eredeti értékére egy BitConverter vagy BinaryReader metódus meghívásával.

  • Egy sztring, amely annak a típusnak a teljes nevét tartalmazza, System.Stringamelynek szerializált adatai hozzá vannak rendelve az resourceData argumentumhoz (például). Ezenkívül a .NET osztálytár részét nem képező típusok esetében a sztring tartalmazza a típust tartalmazó szerelvény nevét, verzióját, kultúráját és nyilvános kulcsát. A következő sztring például azt jelzi, hogy a szerializált adatok a Person névtérben található Extensions típuspéldányt jelölik, amely egy Segédprogram nevű szerelvény 1.0-s verziójában található, amely nem rendelkezik nyilvános kulccsal és nincs kijelölt kultúrával.

    Extensions.Person, Utility, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null

  • A metódushívás adattípusának leírására használt sztring ResourceWriter.AddResourceData .

A következőre érvényes:

Lásd még