TypeDescriptor.GetProperties TypeDescriptor.GetProperties TypeDescriptor.GetProperties TypeDescriptor.GetProperties Method

Definizione

Restituisce l'insieme delle proprietà in un componente o in un tipo.Returns the collection of properties on a component or type.

Overload

GetProperties(Object, Attribute[], Boolean) GetProperties(Object, Attribute[], Boolean) GetProperties(Object, Attribute[], Boolean) GetProperties(Object, Attribute[], Boolean)

Restituisce l'insieme di proprietà per un componente specificato utilizzando come filtro una matrice di attributi specificata e un descrittore di tipi personalizzato.Returns the collection of properties for a specified component using a specified array of attributes as a filter and using a custom type descriptor.

GetProperties(Object, Boolean) GetProperties(Object, Boolean) GetProperties(Object, Boolean) GetProperties(Object, Boolean)

Restituisce l'insieme di proprietà per un componente specificato utilizzando il descrittore di tipi personalizzato.Returns the collection of properties for a specified component using the default type descriptor.

GetProperties(Type, Attribute[]) GetProperties(Type, Attribute[]) GetProperties(Type, Attribute[]) GetProperties(Type, Attribute[])

Restituisce l'insieme di proprietà per un tipo specificato di componente utilizzando come filtro una matrice di attributi specificata.Returns the collection of properties for a specified type of component using a specified array of attributes as a filter.

GetProperties(Type) GetProperties(Type) GetProperties(Type) GetProperties(Type)

Restituisce l'insieme di proprietà per un tipo specificato di componente.Returns the collection of properties for a specified type of component.

GetProperties(Object) GetProperties(Object) GetProperties(Object) GetProperties(Object)

Restituisce l'insieme di proprietà per un componente specificato.Returns the collection of properties for a specified component.

GetProperties(Object, Attribute[]) GetProperties(Object, Attribute[]) GetProperties(Object, Attribute[]) GetProperties(Object, Attribute[])

Restituisce l'insieme di proprietà per un componente specificato utilizzando come filtro una matrice di attributi specificata.Returns the collection of properties for a specified component using a specified array of attributes as a filter.

GetProperties(Object, Attribute[], Boolean) GetProperties(Object, Attribute[], Boolean) GetProperties(Object, Attribute[], Boolean) GetProperties(Object, Attribute[], Boolean)

Restituisce l'insieme di proprietà per un componente specificato utilizzando come filtro una matrice di attributi specificata e un descrittore di tipi personalizzato.Returns the collection of properties for a specified component using a specified array of attributes as a filter and using a custom type descriptor.

public:
 static System::ComponentModel::PropertyDescriptorCollection ^ GetProperties(System::Object ^ component, cli::array <Attribute ^> ^ attributes, bool noCustomTypeDesc);
public static System.ComponentModel.PropertyDescriptorCollection GetProperties (object component, Attribute[] attributes, bool noCustomTypeDesc);
static member GetProperties : obj * Attribute[] * bool -> System.ComponentModel.PropertyDescriptorCollection
Public Shared Function GetProperties (component As Object, attributes As Attribute(), noCustomTypeDesc As Boolean) As PropertyDescriptorCollection

Parametri

component
Object Object Object Object

Componente per il quale ottenere le proprietà.A component to get the properties for.

attributes
Attribute[]

Matrice di tipo Attribute da usare come filtro.An array of type Attribute to use as a filter.

noCustomTypeDesc
Boolean Boolean Boolean Boolean

true per considerare le informazioni di descrizione dei tipi personalizzati. In caso contrario, false.true to consider custom type description information; otherwise, false.

Restituisce

Insieme PropertyDescriptorCollection con gli eventi che corrispondono agli attributi specificati per lo specifico componente.A PropertyDescriptorCollection with the events that match the specified attributes for the specified component.

Eccezioni

component è un oggetto cross-process remoto.component is a cross-process remoted object.

Commenti

Le proprietà di un component oggetto possono essere diverse dalle proprietà di una classe, perché il sito può aggiungere o rimuovere proprietà component se è presente.The properties for a component can differ from the properties of a class, because the site can add or remove properties if the component is sited.

La attributes matrice di parametri viene utilizzata per filtrare la matrice.The attributes parameter array is used to filter the array. Il filtro è definito dalle regole seguenti:Filtering is defined by the following rules:

  • Se una proprietà non dispone di un Attribute oggetto della stessa classe, la proprietà non viene inclusa nella matrice restituita.If a property does not have an Attribute of the same class, the property is not included in the returned array.

  • Se l'attributo è un'istanza della Attribute classe, la proprietà deve essere una corrispondenza esatta o non è inclusa nella matrice restituita.If the attribute is an instance of the Attribute class, the property must be an exact match or it is not included in the returned array.

  • Se un' Attribute istanza viene specificata ed è la proprietà predefinita, viene inclusa nella matrice restituita anche se non è presente alcuna istanza Attribute di nella proprietà.If an Attribute instance is specified and it is the default property, it is included in the returned array even if there is no instance of the Attribute in the property.

  • Se attributes dispone di un attributo predefinito, GetProperties il metodo corrisponde al case quando alla proprietà non è applicato l'attributo.If attributes has a default attribute, the GetProperties method matches the case when the property does not have the attribute applied.

Se il component parametro è null, viene restituita una raccolta vuota.If the component parameter is null, an empty collection is returned.

Non è garantito che l'ordine della raccolta restituita sia identico tra le chiamate, quindi è sempre necessario ordinarlo prima di usarlo.The order of the returned collection is not guaranteed to be identical between calls, so always order it before use.

Vedi anche

GetProperties(Object, Boolean) GetProperties(Object, Boolean) GetProperties(Object, Boolean) GetProperties(Object, Boolean)

Restituisce l'insieme di proprietà per un componente specificato utilizzando il descrittore di tipi personalizzato.Returns the collection of properties for a specified component using the default type descriptor.

public:
 static System::ComponentModel::PropertyDescriptorCollection ^ GetProperties(System::Object ^ component, bool noCustomTypeDesc);
public static System.ComponentModel.PropertyDescriptorCollection GetProperties (object component, bool noCustomTypeDesc);
static member GetProperties : obj * bool -> System.ComponentModel.PropertyDescriptorCollection
Public Shared Function GetProperties (component As Object, noCustomTypeDesc As Boolean) As PropertyDescriptorCollection

Parametri

component
Object Object Object Object

Componente per il quale ottenere le proprietà.A component to get the properties for.

noCustomTypeDesc
Boolean Boolean Boolean Boolean

true per non considerare le informazioni di descrizione dei tipi personalizzati; in caso contrario, false.true to not consider custom type description information; otherwise, false.

Restituisce

Insieme PropertyDescriptorCollection con le proprietà per un componente specificato.A PropertyDescriptorCollection with the properties for a specified component.

Eccezioni

component è un oggetto cross-process remoto.component is a cross-process remoted object.

Commenti

Le proprietà component del parametro possono essere diverse dalle proprietà di una classe, perché il sito può aggiungere o rimuovere proprietà se il component parametro è presente.The properties for the component parameter can differ from the properties of a class, because the site can add or remove properties if the component parameter is sited.

Se component ènull, viene restituita una raccolta vuota.If component is null, an empty collection is returned.

Non è garantito che l'ordine della raccolta restituita sia identico tra le chiamate, quindi è sempre necessario ordinarlo prima di usarlo.The order of the returned collection is not guaranteed to be identical between calls, so always order it before use.

Vedi anche

GetProperties(Type, Attribute[]) GetProperties(Type, Attribute[]) GetProperties(Type, Attribute[]) GetProperties(Type, Attribute[])

Restituisce l'insieme di proprietà per un tipo specificato di componente utilizzando come filtro una matrice di attributi specificata.Returns the collection of properties for a specified type of component using a specified array of attributes as a filter.

public:
 static System::ComponentModel::PropertyDescriptorCollection ^ GetProperties(Type ^ componentType, cli::array <Attribute ^> ^ attributes);
public static System.ComponentModel.PropertyDescriptorCollection GetProperties (Type componentType, Attribute[] attributes);
static member GetProperties : Type * Attribute[] -> System.ComponentModel.PropertyDescriptorCollection
Public Shared Function GetProperties (componentType As Type, attributes As Attribute()) As PropertyDescriptorCollection

Parametri

componentType
Type Type Type Type

Oggetto Type del componente di destinazione.The Type of the target component.

attributes
Attribute[]

Matrice di tipo Attribute da utilizzare come filtro.An array of type Attribute to use as a filter.

Restituisce

Insieme PropertyDescriptorCollection con le proprietà che corrispondono agli attributi specificati per questo tipo di componente.A PropertyDescriptorCollection with the properties that match the specified attributes for this type of component.

Esempi

Nell'esempio di codice riportato di seguito viene illustrato GetProperties come implementare il metodo.The following code example demonstrates how to implement the GetProperties method. Questo esempio di codice fa parte di un esempio più ampio fornito PropertyTab per la classe.This code example is part of a larger example provided for the PropertyTab class.

// Returns the properties of the specified component extended with
// a CategoryAttribute reflecting the name of the type of the property.
[ReflectionPermission(SecurityAction::Demand, Flags=ReflectionPermissionFlag::MemberAccess)]
virtual System::ComponentModel::PropertyDescriptorCollection^ GetProperties( Object^ component, array<System::Attribute^>^attributes ) override
{
   PropertyDescriptorCollection^ props;
   if ( attributes == nullptr )
            props = TypeDescriptor::GetProperties( component );
   else
            props = TypeDescriptor::GetProperties( component, attributes );

   array<PropertyDescriptor^>^propArray = gcnew array<PropertyDescriptor^>(props->Count);
   for ( int i = 0; i < props->Count; i++ )
   {
      // Create a new PropertyDescriptor from the old one, with
      // a CategoryAttribute matching the name of the type.
      array<Attribute^>^temp0 = {gcnew CategoryAttribute( props[ i ]->PropertyType->Name )};
      propArray[ i ] = TypeDescriptor::CreateProperty( props[ i ]->ComponentType, props[ i ], temp0 );

   }
   return gcnew PropertyDescriptorCollection( propArray );
}

virtual System::ComponentModel::PropertyDescriptorCollection^ GetProperties( Object^ component ) override
{
   return this->GetProperties( component, nullptr );
}
// Returns the properties of the specified component extended with 
// a CategoryAttribute reflecting the name of the type of the property.
public override System.ComponentModel.PropertyDescriptorCollection GetProperties(object component, System.Attribute[] attributes)
{
    PropertyDescriptorCollection props;
    if( attributes == null )
        props = TypeDescriptor.GetProperties(component);    
    else
        props = TypeDescriptor.GetProperties(component, attributes);    
    
    PropertyDescriptor[] propArray = new PropertyDescriptor[props.Count];            
    for(int i=0; i<props.Count; i++)           
    {                
        // Create a new PropertyDescriptor from the old one, with 
        // a CategoryAttribute matching the name of the type.
        propArray[i] = TypeDescriptor.CreateProperty(props[i].ComponentType, props[i], new CategoryAttribute(props[i].PropertyType.Name));
    }
    return new PropertyDescriptorCollection( propArray );
}

public override System.ComponentModel.PropertyDescriptorCollection GetProperties(object component)
{                     
    return this.GetProperties(component, null);
}
' Returns the properties of the specified component extended with 
' a CategoryAttribute reflecting the name of the type of the property.
Public Overloads Overrides Function GetProperties(ByVal component As Object, ByVal attributes() As System.Attribute) As System.ComponentModel.PropertyDescriptorCollection
    Dim props As PropertyDescriptorCollection
    If attributes Is Nothing Then
        props = TypeDescriptor.GetProperties(component)
    Else
        props = TypeDescriptor.GetProperties(component, attributes)
    End If
    Dim propArray(props.Count - 1) As PropertyDescriptor
    Dim i As Integer
    For i = 0 To props.Count - 1
        ' Create a new PropertyDescriptor from the old one, with 
        ' a CategoryAttribute matching the name of the type.
        propArray(i) = TypeDescriptor.CreateProperty(props(i).ComponentType, props(i), New CategoryAttribute(props(i).PropertyType.Name))
    Next i
    Return New PropertyDescriptorCollection(propArray)
End Function

Public Overloads Overrides Function GetProperties(ByVal component As Object) As System.ComponentModel.PropertyDescriptorCollection
    Return Me.GetProperties(component, Nothing)
End Function

Commenti

Chiamare questa versione di questo metodo solo quando non si dispone di un'istanza dell'oggetto.Call this version of this method only when you do not have an instance of the object.

La attributes matrice di parametri viene utilizzata per filtrare la matrice.The attributes parameter array is used to filter the array. Il filtro è definito dalle regole seguenti:Filtering is defined by the following rules:

  • Se una proprietà non dispone di un Attribute oggetto della stessa classe, la proprietà non viene inclusa nella matrice restituita.If a property does not have an Attribute of the same class, the property is not included in the returned array.

  • Se l'attributo è un'istanza della Attribute classe, la proprietà deve essere una corrispondenza esatta o non è inclusa nella matrice restituita.If the attribute is an instance of the Attribute class, the property must be an exact match or it is not included in the returned array.

  • Se un' Attribute istanza viene specificata ed è la proprietà predefinita, viene inclusa nella matrice restituita anche se non è presente alcuna istanza Attribute di nella proprietà.If an Attribute instance is specified and it is the default property, it is included in the returned array even if there is no instance of the Attribute in the property.

  • Se attributes dispone di un attributo predefinito, GetProperties il metodo corrisponde al case quando alla proprietà non è applicato l'attributo.If attributes has a default attribute, the GetProperties method matches the case when the property does not have the attribute applied.

Se il componentType parametro è null, viene restituita una raccolta vuota.If the componentType parameter is null, an empty collection is returned.

Non è garantito che l'ordine della raccolta restituita sia identico tra le chiamate, quindi è sempre necessario ordinarlo prima di usarlo.The order of the returned collection is not guaranteed to be identical between calls, so always order it before use.

Vedi anche

GetProperties(Type) GetProperties(Type) GetProperties(Type) GetProperties(Type)

Restituisce l'insieme di proprietà per un tipo specificato di componente.Returns the collection of properties for a specified type of component.

public:
 static System::ComponentModel::PropertyDescriptorCollection ^ GetProperties(Type ^ componentType);
public static System.ComponentModel.PropertyDescriptorCollection GetProperties (Type componentType);
static member GetProperties : Type -> System.ComponentModel.PropertyDescriptorCollection
Public Shared Function GetProperties (componentType As Type) As PropertyDescriptorCollection

Parametri

componentType
Type Type Type Type

Oggetto Type che rappresenta il componente per il quale ottenere proprietà.A Type that represents the component to get properties for.

Restituisce

Insieme PropertyDescriptorCollection con le proprietà per un tipo di componente specificato.A PropertyDescriptorCollection with the properties for a specified type of component.

Commenti

Chiamare questa versione di questo metodo solo quando non si dispone di un'istanza dell'oggetto.Call this version of this method only when you do not have an instance of the object.

Se il componentType parametro è null, viene restituita una raccolta vuota.If the componentType parameter is null, an empty collection is returned.

Non è garantito che l'ordine della raccolta restituita sia identico tra le chiamate, quindi è sempre necessario ordinarlo prima di usarlo.The order of the returned collection is not guaranteed to be identical between calls, so always order it before use.

Vedi anche

GetProperties(Object) GetProperties(Object) GetProperties(Object) GetProperties(Object)

Restituisce l'insieme di proprietà per un componente specificato.Returns the collection of properties for a specified component.

public:
 static System::ComponentModel::PropertyDescriptorCollection ^ GetProperties(System::Object ^ component);
public static System.ComponentModel.PropertyDescriptorCollection GetProperties (object component);
static member GetProperties : obj -> System.ComponentModel.PropertyDescriptorCollection
Public Shared Function GetProperties (component As Object) As PropertyDescriptorCollection

Parametri

component
Object Object Object Object

Componente per il quale ottenere le proprietà.A component to get the properties for.

Restituisce

Insieme PropertyDescriptorCollection con le proprietà per il componente specificato.A PropertyDescriptorCollection with the properties for the specified component.

Eccezioni

component è un oggetto cross-process remoto.component is a cross-process remoted object.

Esempi

Nell'esempio di codice riportato di seguito viene illustrato GetProperties l'utilizzo del metodo per accedere alle proprietà di un controllo.The following code example demonstrates the use of the GetProperties method to access the properties of a control. Questo esempio di codice fa parte di un esempio più ampio fornito ComponentDesigner per la classe.This code example is part of a larger example provided for the ComponentDesigner class.

// This is the shadowed property on the designer.
// This value will be serialized instead of the 
// value of the control's property.
public Color BackColor
{
    get
    {
        return (Color)ShadowProperties["BackColor"];
    }
    set
    {
        if (this.changeService != null)
        {
            PropertyDescriptor backColorDesc =
                TypeDescriptor.GetProperties(this.Control)["BackColor"];

            this.changeService.OnComponentChanging(
                this.Control,
                backColorDesc);

            this.ShadowProperties["BackColor"] = value;

            this.changeService.OnComponentChanged(
                this.Control,
                backColorDesc,
                null,
                null);
        }
    }
}
' This is the shadowed property on the designer.
' This value will be serialized instead of the 
' value of the control's property.

Public Property BackColor() As Color
    Get
        Return CType(ShadowProperties("BackColor"), Color)
    End Get
    Set(ByVal value As Color)
        If (Me.changeService IsNot Nothing) Then
            Dim backColorDesc As PropertyDescriptor = TypeDescriptor.GetProperties(Me.Control)("BackColor")

            Me.changeService.OnComponentChanging(Me.Control, backColorDesc)

            Me.ShadowProperties("BackColor") = value

            Me.changeService.OnComponentChanged(Me.Control, backColorDesc, Nothing, Nothing)
        End If
    End Set
End Property

Commenti

Le proprietà di un componente possono differire dalle proprietà di una classe, in quanto il sito può aggiungere o rimuovere proprietà se il componente è sito.The properties for a component can differ from the properties of a class, because the site can add or remove properties if the component is sited.

Se il component parametro è null, viene restituita una raccolta vuota.If the component parameter is null, an empty collection is returned.

Non è garantito che l'ordine della raccolta restituita sia identico tra le chiamate, quindi è sempre necessario ordinarlo prima di usarlo.The order of the returned collection is not guaranteed to be identical between calls, so always order it before use.

Vedi anche

GetProperties(Object, Attribute[]) GetProperties(Object, Attribute[]) GetProperties(Object, Attribute[]) GetProperties(Object, Attribute[])

Restituisce l'insieme di proprietà per un componente specificato utilizzando come filtro una matrice di attributi specificata.Returns the collection of properties for a specified component using a specified array of attributes as a filter.

public:
 static System::ComponentModel::PropertyDescriptorCollection ^ GetProperties(System::Object ^ component, cli::array <Attribute ^> ^ attributes);
public static System.ComponentModel.PropertyDescriptorCollection GetProperties (object component, Attribute[] attributes);
static member GetProperties : obj * Attribute[] -> System.ComponentModel.PropertyDescriptorCollection
Public Shared Function GetProperties (component As Object, attributes As Attribute()) As PropertyDescriptorCollection

Parametri

component
Object Object Object Object

Componente per il quale ottenere le proprietà.A component to get the properties for.

attributes
Attribute[]

Matrice di tipo Attribute da utilizzare come filtro.An array of type Attribute to use as a filter.

Restituisce

Insieme PropertyDescriptorCollection con le proprietà che corrispondono agli attributi specificati per lo specifico componente.A PropertyDescriptorCollection with the properties that match the specified attributes for the specified component.

Eccezioni

component è un oggetto cross-process remoto.component is a cross-process remoted object.

Esempi

Nell'esempio di codice riportato di seguito viene illustrato GetProperties come implementare il metodo.The following code example demonstrates how to implement the GetProperties method. Questo esempio di codice fa parte di un esempio più ampio fornito PropertyTab per la classe.This code example is part of a larger example provided for the PropertyTab class.

// Returns the properties of the specified component extended with
// a CategoryAttribute reflecting the name of the type of the property.
[ReflectionPermission(SecurityAction::Demand, Flags=ReflectionPermissionFlag::MemberAccess)]
virtual System::ComponentModel::PropertyDescriptorCollection^ GetProperties( Object^ component, array<System::Attribute^>^attributes ) override
{
   PropertyDescriptorCollection^ props;
   if ( attributes == nullptr )
            props = TypeDescriptor::GetProperties( component );
   else
            props = TypeDescriptor::GetProperties( component, attributes );

   array<PropertyDescriptor^>^propArray = gcnew array<PropertyDescriptor^>(props->Count);
   for ( int i = 0; i < props->Count; i++ )
   {
      // Create a new PropertyDescriptor from the old one, with
      // a CategoryAttribute matching the name of the type.
      array<Attribute^>^temp0 = {gcnew CategoryAttribute( props[ i ]->PropertyType->Name )};
      propArray[ i ] = TypeDescriptor::CreateProperty( props[ i ]->ComponentType, props[ i ], temp0 );

   }
   return gcnew PropertyDescriptorCollection( propArray );
}

virtual System::ComponentModel::PropertyDescriptorCollection^ GetProperties( Object^ component ) override
{
   return this->GetProperties( component, nullptr );
}
// Returns the properties of the specified component extended with 
// a CategoryAttribute reflecting the name of the type of the property.
public override System.ComponentModel.PropertyDescriptorCollection GetProperties(object component, System.Attribute[] attributes)
{
    PropertyDescriptorCollection props;
    if( attributes == null )
        props = TypeDescriptor.GetProperties(component);    
    else
        props = TypeDescriptor.GetProperties(component, attributes);    
    
    PropertyDescriptor[] propArray = new PropertyDescriptor[props.Count];            
    for(int i=0; i<props.Count; i++)           
    {                
        // Create a new PropertyDescriptor from the old one, with 
        // a CategoryAttribute matching the name of the type.
        propArray[i] = TypeDescriptor.CreateProperty(props[i].ComponentType, props[i], new CategoryAttribute(props[i].PropertyType.Name));
    }
    return new PropertyDescriptorCollection( propArray );
}

public override System.ComponentModel.PropertyDescriptorCollection GetProperties(object component)
{                     
    return this.GetProperties(component, null);
}
' Returns the properties of the specified component extended with 
' a CategoryAttribute reflecting the name of the type of the property.
Public Overloads Overrides Function GetProperties(ByVal component As Object, ByVal attributes() As System.Attribute) As System.ComponentModel.PropertyDescriptorCollection
    Dim props As PropertyDescriptorCollection
    If attributes Is Nothing Then
        props = TypeDescriptor.GetProperties(component)
    Else
        props = TypeDescriptor.GetProperties(component, attributes)
    End If
    Dim propArray(props.Count - 1) As PropertyDescriptor
    Dim i As Integer
    For i = 0 To props.Count - 1
        ' Create a new PropertyDescriptor from the old one, with 
        ' a CategoryAttribute matching the name of the type.
        propArray(i) = TypeDescriptor.CreateProperty(props(i).ComponentType, props(i), New CategoryAttribute(props(i).PropertyType.Name))
    Next i
    Return New PropertyDescriptorCollection(propArray)
End Function

Public Overloads Overrides Function GetProperties(ByVal component As Object) As System.ComponentModel.PropertyDescriptorCollection
    Return Me.GetProperties(component, Nothing)
End Function

Commenti

Le proprietà component del parametro possono essere diverse dalle proprietà di una classe, perché il sito può aggiungere o rimuovere proprietà se il component parametro è presente.The properties for the component parameter can differ from the properties of a class, because the site can add or remove properties if the component parameter is sited.

La attributes matrice di parametri viene utilizzata per filtrare la matrice.The attributes parameter array is used to filter the array. Il filtro è definito dalle regole seguenti:Filtering is defined by the following rules:

  • Se una proprietà non dispone di un Attribute oggetto della stessa classe, la proprietà non viene inclusa nella matrice restituita.If a property does not have an Attribute of the same class, the property is not included in the returned array.

  • Se l'attributo è un'istanza della Attribute classe, la proprietà deve essere una corrispondenza esatta o non è inclusa nella matrice restituita.If the attribute is an instance of the Attribute class, the property must be an exact match or it is not included in the returned array.

  • Se un' Attribute istanza viene specificata ed è la proprietà predefinita, viene inclusa nella matrice restituita anche se non è presente alcuna istanza Attribute di nella proprietà.If an Attribute instance is specified and it is the default property, it is included in the returned array even if there is no instance of the Attribute in the property.

  • Se attributes dispone di un attributo predefinito, GetProperties il metodo corrisponde al case quando alla proprietà non è applicato l'attributo.If attributes has a default attribute, the GetProperties method matches the case when the property does not have the attribute applied.

Se component ènull, viene restituita una raccolta vuota.If component is null, an empty collection is returned.

Non è garantito che l'ordine della raccolta restituita sia identico tra le chiamate, quindi è sempre necessario ordinarlo prima di usarlo.The order of the returned collection is not guaranteed to be identical between calls, so always order it before use.

Vedi anche

Si applica a