Clase EntitySet<TEntity>
Proporciona para mantenimiento diferido de carga y la relación para el lado "varios" de las relaciones de uno a muchos y muchos a muchos
Jerarquía de la herencia
System.Object
Microsoft.SharePoint.Linq.EntitySet<TEntity>
Espacio de nombres: Microsoft.SharePoint.Linq
Ensamblado: Microsoft.SharePoint.Linq (en Microsoft.SharePoint.Linq.dll)
Sintaxis
'Declaración
<DataContractAttribute> _
Public NotInheritable Class EntitySet(Of TEntity As Class) _
Implements IList(Of TEntity), ICollection(Of TEntity), _
IOrderedQueryable(Of TEntity), IQueryable(Of TEntity), IEnumerable(Of TEntity), _
IOrderedQueryable, IQueryable, IList, ICollection, IEnumerable, _
ICloneable
'Uso
Dim instance As EntitySet(Of TEntity)
[DataContractAttribute]
public sealed class EntitySet<TEntity> : IList<TEntity>,
ICollection<TEntity>, IOrderedQueryable<TEntity>, IQueryable<TEntity>,
IEnumerable<TEntity>, IOrderedQueryable, IQueryable, IList, ICollection,
IEnumerable, ICloneable
where TEntity : class
Parámetros de tipo
- TEntity
El tipo del miembro de la colección.
Comentarios
Por ejemplo, suponga que una lista de Los miembros del equipo tiene una columna de Proyectos asignado es un campo de búsqueda a una lista de proyectos . Más de un miembro del equipo puede asignarse a un proyecto en particular y un miembro del equipo en particular puede asignarse a más de un proyecto; por lo que se trata de una relación de varios a varios.
Ejemplos
El código siguiente muestra cómo la propiedad AssignedProjects en el escenario descrito anteriormente se declararía como un tipo de EntitySet<TEntity> que contiene un campo privado EntitySet<TEntity> :
[ContentType(Name="Item", Id="0x01", List="Team Members")]
[DataContract()]
public partial class TeamMembersItem : Item {
[DataMember()]
private EntitySet<Project> _projects;
public TeamMembersItem() {
this._manager = new EntitySet<Project>();
this.Initialize();
}
[Association(Name="AssignedProjects", Storage="_projects ", MultivalueType=AssociationType.Multi, List="Projects")]
public EntitySet<Project> AssignedProjects {
get {
return this._projects;
}
set {
this._projects.Assign(value);
}
}
// Other members omitted for readability.
}
Seguridad para subprocesos
Los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para los subprocesos.