Asociations > Many to many

El tipo de relación many-to-many se utiliza para relaciones de muchos a muchos. La relación puede estar representada por dos tipos de diccionarios: HashTable o MyNetOS.Type.SortedHashTable.

Sintaxis

<-- Sin orden -->
<dictionary type="many-to-many">
	<asociation name="PropertyName" property="PropertyName" parameter="ParameterName" 
	table="TableName" {cascade-insert | cascade-update | cascade-delete | lazy} />
	
	<value class="ClassName" />
	<key property="PropertyName" parameter="ParameterName"/>
</dictionary>

<-- Con orden -->
<dictionary type="many-to-many">
	<asociation name="PropertyName" property="PropertyName" parameter="ParameterName" 
	table="TableName" {cascade-insert | cascade-update | cascade-delete | lazy} />
	
	<value class="ClassName" />
	<key value="ValueName" property="PropertyName" parameter="ParameterName"/>
	<index parameter="ParameterName" />
</dictionary>

Elementos

Para el caso que el objeto A tenga declarada una relación al objeto B.

  • Asociation: Especifica como se establecerá la relación. Ver Asociations > One to one.
  • Value: Es el nombre de la clase del objeto B que se establecerá en el valor de la asociación.
  • Key: Especifica el nombre de la propiedad en B que se utilizará para establecer el valor de referencia para el diccionario.

Atributos

  • ValueName: Especifica el miembro de B que establecerá el valor key a nivel de objetos en la collección.

Elementos opcionales

  • Index: Especifica el nombre del campo de la tabla especificada en TableName que se utilizará para realizar el orden de la lista. Si se especifica este lemento, el tipo de diccionario será MyNetOS.Type.SortedHashTable.