(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

WriteOnlyArrayAttribute-Klasse

.NET Framework 4.5

Bei Anwendung auf einen Arrayparameter in einer Windows-Runtime-Komponente wird dadurch angegeben, dass der Inhalt eines Arrays, das an diesen Parameter übergeben wird, nur für die Ausgabe verwendet wird. Der Aufrufer gewährleistet nicht, dass der Inhalt initialisiert wird, und die aufgerufene Methode soll den Inhalt nicht lesen. Weitere Informationen finden Sie in den Hinweisen mit wichtigen Informationen zu Aufrufern, die mithilfe von verwaltetem Code geschrieben sind.

System.Object
  System.Attribute
    System.Runtime.InteropServices.WindowsRuntime.WriteOnlyArrayAttribute

Namespace:  System.Runtime.InteropServices.WindowsRuntime
Assembly:  mscorlib (in mscorlib.dll)

[AttributeUsageAttribute(AttributeTargets.Parameter, Inherited = false, AllowMultiple = false)]
public sealed class WriteOnlyArrayAttribute : Attribute

Der WriteOnlyArrayAttribute-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche MethodeWriteOnlyArrayAttributeInitialisiert eine neue Instanz der WriteOnlyArrayAttribute-Klasse.
Zum Seitenanfang

  NameBeschreibung
Öffentliche EigenschaftTypeIdBei Implementierung in einer abgeleiteten Klasse wird ein eindeutiger Bezeichner für dieses Attribute abgerufen. (Von Attribute geerbt.)
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeEqualsInfrastruktur. Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist. (Von Attribute geerbt.)
Öffentliche MethodeGetHashCodeGibt den Hashcode für diese Instanz zurück. (Von Attribute geerbt.)
Öffentliche MethodeGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche MethodeIsDefaultAttributeBeim Überschreiben in einer abgeleiteten Klasse wird angegeben, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist. (Von Attribute geerbt.)
Öffentliche MethodeMatchBeim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht. (Von Attribute geerbt.)
Öffentliche MethodeToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Zum Seitenanfang

  NameBeschreibung
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetIDsOfNamesOrdnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetTypeInfoRuft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetTypeInfoCountRuft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1). (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.InvokeStellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit. (Von Attribute geerbt.)
Zum Seitenanfang

Wenn ein Windows-Runtime Arrayparameter in der Komponente als Wert (ByVal in Visual Basic) übergeben wird, müssen Sie eines der folgenden Attribute auf das Programmierelement anwenden:

  • Wenden Sie das ReadOnlyArrayAttribute-Attribut, wenn Sie den Inhalt des für nur beabsichtigen Eingabe verwendet werden Arrays.

  • Wenden Sie das WriteOnlyArrayAttribute-Attribut, wenn Sie den Inhalt des für nur beabsichtigen Ausgabe verwendet werden Arrays, (das heißt, liest die Methodensätze der Inhalt des Arrays jedoch nicht).

Das Anwenden von Attributen auf ein Parameter verursacht einen Fehler. Weitere Informationen einschließlich der standardmäßigen Vorgehensweise zum Vornehmen von Änderungen an einem Array, finden Sie unter Übergeben von Arrays an eine Windows Runtime-Komponente im Windows Developer Center.

Wichtiger HinweisWichtig

Parameter, der das Attribut WriteOnlyArrayAttribute unterschiedlich verhalten können Sie je nachdem, ob der Aufrufer in systemeigenem Code oder in verwaltetem Code geschrieben wird. Wenn der Aufrufer systemeigener Code (JavaScript oder Komponentenerweiterungen für Visual C++) ist, kann die aufgerufene Methode keine Annahmen über den Inhalt des ursprünglichen Arrays machen. Beispielsweise kann das Array, das die Methode empfängt, würde möglicherweise nicht initialisiert oder Standardwerte. Die Methode wird erwartet, dass die Werte aller Elemente im Array festzulegen.

Wenn der Aufrufer verwalteten Code handelt, wird das ursprüngliche Array des Aufrufers die aufgerufene Methode übergeben, da in jedem Methodenaufruf in .NET Framework ist. Arrayinhalte ist in verwaltetem Code geändert, sodass die Methode diese Werte selektiv lesen und ändern. Dies ist wichtig zu merken, da es die Komponententests aus, die für eine Windows-Runtime Komponente geschrieben werden. Wenn die Tests in verwaltetem Code geschrieben werden, wird der Inhalt eines Arrays, während Tests änderbar sein, und die Ergebnisse stimmen wahrscheinlich, unterschiedlich sein, wenn die Methode vom systemeigenen später Code aufgerufen wird.

Das Übernehmen dieses Attributs zu einem Parameter out oder Parameter, der das Attribut InAttribute aufweist, löst einen Fehler, wenn das Modul exportiert wird. Das Anwenden des Attributs auf einen Parameter, der das Attribut OutAttribute aufweist, löst einen Fehler, vorausgesetzt, der Parameter auch den Modifizierer Visual Basic ByRef. In diesem Fall ist das Attribut jedoch redundant zulässigen.

.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5

.NET für Windows Phone-Apps

Unterstützt in: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft